Hola @RubenDario
Faltaría que en cada línea dentro del With le pongas un punto al inicio
With Hoja1
.Range("B6:B18,F6:F18,J6:J18").Select
.Range("J6").Activate
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
.Selection.ClearContents
.Range("A1").Select
End With
Sin embargo, lo que yo haría (si fuese mi proyecto)... te ofrezco varias soluciones.
No asignarlo a una combinación de teclas, mejor ponerlo en una forma o botón.
Modificar tu libro con la app Custom UI Editor o similar y adicionar un botón en el Ribbon, estará visible solo cuando el libro esté activo.
Al principio de tu código pondría algo como: If Thisworkbook.Name <> ActiveWorkbook.Name Then Exit sub
Por
DiegoPC, · publicado
Hola, tengo un problema con un bucle. El caso es que en el Mac me funciona pero en windows no.
El código es este:
Private Sub Worksheet_Calculate()
Dim KeyCells As Range
If Range("C13") = 1 Then
Range("D7").Value = Range("D7").Value - 1
End If
Do While Range("C13") = 1
Range("D7").Value = Range("D7").Value - 1
Loop
If Range("C13") = 0 Then
Range("D7").Value = Range("D7").Value + 1
End If
Do While Range("C13") = 0
Range("D7").Value = Range("D7").Value + 1
Loop
Range("D7").Value = Range("D7").Value - 1
End Sub
El caso es que quiero que cuando una celda (la C13) sea 1, me reste 1 de la celda D7, y así hasta que sea la celda C13 cero.
Una vez leído esto, en caso de ser cero la celda C13, que sume 1 a la D7 hasta que C13 sea 1, y luego le reste 1 a la celda D7.
El problema es que en windows se queda atascado sumando y restando 1, pero en el Mac no. Alguna idea?
Gracias!