Septiembre, con todo el poder de Excel, Power BI e Inteligencia Artificial | Clase en vivo privada este sábado 12 de septiembre de 2026. Clic aquí →
hace 4 horas 💬 Comentario
Mi respuesta en dos partes una sin rodeo y la otra con rodeo (convertí el si y el no en 1 o 2 o simplemente tomando el si o no en los case):

Sub Convertir_Mayusc_V2()

Dim Celda As Range
Dim opciondetexto As Byte

opciondetexto = MsgBox("seleccione 'Si' para mayusculas y 'NO' para minusculas", vbYesNo + vbInformation)
       
    
If opciondetexto = vbYes Then

    opciondetexto = 1
    
    Else
    
    opciondetexto = 2
 End If
 


For Each Celda In Selection

    Select Case opciondetexto
    
    Case 1
    Celda.Value = VBA.UCase(Celda)
    
    Case 2
    Celda.Value = VBA.LCase(Celda)
    End Select
    
    
Next Celda


End Sub

Sub Convertir_Mayusc_V3()

    Dim Celda As Range
    Dim OpcionDeTexto As VbMsgBoxResult

    OpcionDeTexto = MsgBox( _
        "Seleccione Sí para mayúsculas y No para minúsculas.", _
        vbYesNo + vbInformation, _
        "Convertir texto")

    For Each Celda In Selection

        Select Case OpcionDeTexto

            Case vbYes
                Celda.Value = VBA.UCase(Celda.Value)

            Case vbNo
                Celda.Value = VBA.LCase(Celda.Value)

        End Select

    Next Celda

End Sub



Respuestas 0