Código Convertir a Mayúscula |
Responder |
Autor | |
JuanAntonio_
Asiduo Unido: 10/Febrero/2006 Localización: España Estado: Sin conexión Puntos: 371 |
Tema: Código Convertir a Mayúscula Enviado: 25/Julio/2019 a las 19:21 |
Hola: Tengo el siguiente código asignado a una forma. Con él, selecciono una serie de celdas y me convierte el texto en mayúsculas: Sub CambiarMayuscula() Dim Rng As Range For Each Rng In Selection.Cells If Rng.HasFormula = False Then Rng.Value = UCase(Rng.Value) End If Next Rng End Sub Pero lo que yo quiero es que el código para convertir vaya directamente referido a las celdas D2:D15, de tal forma que no tenga que hacer ninguna selección ni tener un comando para ejecutar la macro. No se cómo modificarlo.
|
|
Un saludo.
Juan Antonio Desde Granada |
|
Emilio
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Santander Unido: 08/Agosto/2004 Localización: España Estado: Sin conexión Puntos: 18836 |
Enviado: 25/Julio/2019 a las 19:31 |
Hola!
utiliza intersect para saber si la celda modificada está en el rango deseado
|
|
JuanAntonio_
Asiduo Unido: 10/Febrero/2006 Localización: España Estado: Sin conexión Puntos: 371 |
Enviado: 25/Julio/2019 a las 19:55 |
Funciona bien, es decir, hace la conversión, pero después no me deja introducir datos y me cierra la hoja de cálculo
|
|
Un saludo.
Juan Antonio Desde Granada |
|
Emilio
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Santander Unido: 08/Agosto/2004 Localización: España Estado: Sin conexión Puntos: 18836 |
Enviado: 25/Julio/2019 a las 20:01 |
Pues desconozco porque falla, no debería. Hay otra solución aún mas sencilla, utiliza en ese rango una de las fuentes que solo utiliza mayúsculas y no necesitarás ningún código,
|
|
JuanAntonio_
Asiduo Unido: 10/Febrero/2006 Localización: España Estado: Sin conexión Puntos: 371 |
Enviado: 25/Julio/2019 a las 20:18 |
Yo es que no tengo ni idea de programación, me defiendo copiando y pegando lo que encuentro por ahí. Pero creo que no es muy difícil. Se trata sencillamente de que cuando escriba texto en una de las celdas cuyo rango ya está predefinido, al salir de ella, convierta el texto en mayúscula automáticamente. Lo de la fuente con texto en mayúscula es una idea pero estéticamente al cambiar la fuente en unas celdas concretas no queda bien. De todas formas gracias por tu aportación
Editado por JuanAntonio_ - 25/Julio/2019 a las 20:19 |
|
Un saludo.
Juan Antonio Desde Granada |
|
prga
Moderador Unido: 16/Noviembre/2004 Localización: España Estado: Sin conexión Puntos: 3523 |
Enviado: 27/Julio/2019 a las 13:07 |
Hola.
A mí me salta error en pruebas hechas con el excel 2019. Da la sensación que entra en un bucle de llamadas a funciones. Parece ser que con algunas añadidos al código se corrige el error. Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo Error_Worksheet_Change Application.EnableEvents = False If Not Application.Intersect(Target, Range("D2:D15")) Is Nothing Then Target = UCase(Target) End If Application.EnableEvents = True Exit Sub Error_Worksheet_Change: Application.EnableEvents = True MsgBox "Se produjo el error " & vbCrLf & "Error número: " & Err.Number & vbCrLf & "Descripción: " & Err.Description, vbCritical End Sub Espero que ayude a resolver la duda Ya comentas Un saludo a todos |
|
JuanAntonio_
Asiduo Unido: 10/Febrero/2006 Localización: España Estado: Sin conexión Puntos: 371 |
Enviado: 27/Julio/2019 a las 17:54 |
PRGA, me alegro de volver a encontrarte. Cómo siempre, nunca fallas. Funciona perfectamente. MUCHAS GRACIAS Y UN ABRAZO.
|
|
Un saludo.
Juan Antonio Desde Granada |
|
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |