Código Mes y Año VBA Excel

Tengo un botón de comando que al momento que se presione debe replicar la fórmula a continuación en rangos diferentes sin embargo me sale error por dice que tengo dos (2) veces la opción "For" y cuando trato de modificarla no me funciona.

Código #1 - Trato de copiar la fórmula y me sale que no puedo usar dos veces "For".

Dim Mes As String
ult = Cells(Rows.Count, 11).End(xlUp).Row
For Y = 300 To ult
Select Case Month(Cells(Y, 66))
Case 1: Mes = "Enero"
Case 2: Mes = "Febrero"
Case 3: Mes = "Marzo"
Case 4: Mes = "Abril"
Case 5: Mes = "Mayo"
Case 6: Mes = "Junio"
Case 7: Mes = "Julio"
Case 8: Mes = "Agosto"
Case 9: Mes = "Septiembre"
Case 10: Mes = "Octubre"
Case 11: Mes = "Noviembre"
Case 12: Mes = "Diciembre"
End Select
Cells(Y, 69) = Mes
Dim Mes As String
ult = Cells(Rows.Count, 80).End(xlUp).Row
For Y = 300 To ult
Select Case Month(Cells(Y, 135))
Case 1: Mes = "Enero"
Case 2: Mes = "Febrero"
Case 3: Mes = "Marzo"
Case 4: Mes = "Abril"
Case 5: Mes = "Mayo"
Case 6: Mes = "Junio"
Case 7: Mes = "Julio"
Case 8: Mes = "Agosto"
Case 9: Mes = "Septiembre"
Case 10: Mes = "Octubre"
Case 11: Mes = "Noviembre"
Case 12: Mes = "Diciembre"
End Select
Cells(Y, 138) = Mes

Next

Código #2 - Luego hice esto pero no me funciona.

Dim Mes As String
ult = Cells(Rows.Count, 11).End(xlUp).Row
ult = Cells(Rows.Count, 80).End(xlUp).Row
For Y = 300 To ult
Select Case Month(Cells(Y, 66))
Case 1: Mes = "Enero"
Case 2: Mes = "Febrero"
Case 3: Mes = "Marzo"
Case 4: Mes = "Abril"
Case 5: Mes = "Mayo"
Case 6: Mes = "Junio"
Case 7: Mes = "Julio"
Case 8: Mes = "Agosto"
Case 9: Mes = "Septiembre"
Case 10: Mes = "Octubre"
Case 11: Mes = "Noviembre"
Case 12: Mes = "Diciembre"
End Select
Cells(Y, 69) = Mes
Next

1 respuesta

Respuesta
1

Te anexo la corrección, según entiendo tienes 3 for, después del primer for, te faltaba el next

Sub CodMes()
    'Código #1 - Trato de copiar la fórmula y me sale que no puedo usar dos veces "For".
    Dim Mes As String
    ult = Cells(Rows.Count, 11).End(xlUp).Row
    For Y = 300 To ult
        Select Case Month(Cells(Y, 66))
            Case 1: Mes = "Enero"
            Case 2: Mes = "Febrero"
            Case 3: Mes = "Marzo"
            Case 4: Mes = "Abril"
            Case 5: Mes = "Mayo"
            Case 6: Mes = "Junio"
            Case 7: Mes = "Julio"
            Case 8: Mes = "Agosto"
            Case 9: Mes = "Septiembre"
            Case 10: Mes = "Octubre"
            Case 11: Mes = "Noviembre"
            Case 12: Mes = "Diciembre"
        End Select
        Cells(Y, 69) = Mes
    Next
    '
    ult = Cells(Rows.Count, 80).End(xlUp).Row
    For Y = 300 To ult
        Select Case Month(Cells(Y, 135))
            Case 1: Mes = "Enero"
            Case 2: Mes = "Febrero"
            Case 3: Mes = "Marzo"
            Case 4: Mes = "Abril"
            Case 5: Mes = "Mayo"
            Case 6: Mes = "Junio"
            Case 7: Mes = "Julio"
            Case 8: Mes = "Agosto"
            Case 9: Mes = "Septiembre"
            Case 10: Mes = "Octubre"
            Case 11: Mes = "Noviembre"
            Case 12: Mes = "Diciembre"
        End Select
        Cells(Y, 138) = Mes
    Next
    'Código #2 - Luego hice esto pero no me funciona.
    ult = Cells(Rows.Count, 11).End(xlUp).Row
    ult = Cells(Rows.Count, 80).End(xlUp).Row
    For Y = 300 To ult
        Select Case Month(Cells(Y, 66))
            Case 1: Mes = "Enero"
            Case 2: Mes = "Febrero"
            Case 3: Mes = "Marzo"
            Case 4: Mes = "Abril"
            Case 5: Mes = "Mayo"
            Case 6: Mes = "Junio"
            Case 7: Mes = "Julio"
            Case 8: Mes = "Agosto"
            Case 9: Mes = "Septiembre"
            Case 10: Mes = "Octubre"
            Case 11: Mes = "Noviembre"
            Case 12: Mes = "Diciembre"
        End Select
        Cells(Y, 69) = Mes
    Next
End Sub

Si tienes dificultades con el código, explícame lo que necesitas y te apoyo con la macro.

Saludos. Dante Amor

Si es lo que necesitas. No olvides valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas