Foros del Web » Soporte técnico » Ofimática »

Crear macro, que busque palabra, y la ponga en negrita

Estas en el tema de Crear macro, que busque palabra, y la ponga en negrita en el foro de Ofimática en Foros del Web. Hola, necesitaria crear una macro en excel , que me busque una palabra en una celda, y le cambie el formato, a bold. lo trate ...
  #1 (permalink)  
Antiguo 27/03/2007, 12:31
Avatar de lucasmoadr  
Fecha de Ingreso: marzo-2007
Ubicación: Llavallol, Buenos Aires
Mensajes: 220
Antigüedad: 17 años
Puntos: 5
Crear macro, que busque palabra, y la ponga en negrita

Hola, necesitaria crear una macro en excel , que me busque una palabra en una celda, y le cambie el formato, a bold. lo trate de hacer, pero me pone toda la celda en bold, yo lo unico que necesito es que me cambie el formato de una sola palabra y no toda la celda.
  #2 (permalink)  
Antiguo 27/03/2007, 14:33
Avatar de abrahamvj  
Fecha de Ingreso: julio-2006
Ubicación: Lima, Peru
Mensajes: 708
Antigüedad: 17 años, 9 meses
Puntos: 18
Re: Crear macro, que busque palabra, y la ponga en negrita

Pues no es muyyy dificl, pero hay que darle varias indicaciones:

Sub Buscando()
Dim valor As String, celda1 As String, celda2 As String
Dim inicio As String, largo1 As String
valor = InputBox("Ingrese la palabra a buscar")
largo1 = Len(valor)
Cells.Find(What:=valor, After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate

celda1 = ActiveCell.Address
celda2 = 0

Do While celda2 <> celda1
inicio = InStr(ActiveCell, valor)
With ActiveCell.Characters(Start:=inicio, Length:=largo1).Font
.FontStyle = "Negrita"
End With

Cells.FindNext(After:=ActiveCell).Activate
celda2 = ActiveCell.Address
Loop

End Sub

Abraham
  #3 (permalink)  
Antiguo 27/03/2007, 17:10
Avatar de lucasmoadr  
Fecha de Ingreso: marzo-2007
Ubicación: Llavallol, Buenos Aires
Mensajes: 220
Antigüedad: 17 años
Puntos: 5
Re: Crear macro, que busque palabra, y la ponga en negrita

Muchas gracias, Realmente, no conozco mucho sobre macros. si quisiera que primero me busque una palabra y luego me la reemplace por otra, y esa la ponga en negrita, como seria. desde ya muchas gracias
  #4 (permalink)  
Antiguo 27/03/2007, 20:42
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años
Puntos: 88
Crear macro que: busque una palabra, la reemplace por otra y la ponga en negrita...

Te dejo la macro:
Código:
Sub BuscoReemplazoNegrita()
    WordSearch = InputBox(prompt:="Palabra a buscar:", Title:="Búsqueda y Reemplazo")
    If WordSearch = "" Then Exit Sub
    WordReplacement = InputBox(prompt:="Palabra de reemplazo:", Title:="Búsqueda y Reemplazo")
    If WordReplacement = "" Then Exit Sub
    
    On Error GoTo Fin
    Cells.Find(What:=WordSearch, After:=ActiveCell, LookIn:=xlValues, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False).Activate
    On Error GoTo 0
    
    Cells.Replace What:=WordSearch, Replacement:=WordReplacement, _
        LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
    
    FirstCell = ActiveCell.AddressLocal
    Do
        MyPos = InStr(1, ActiveCell, WordReplacement)
        While MyPos > 0
            ActiveCell.Characters(Start:=MyPos, Length:=Len(WordReplacement)).Font.FontStyle = "Negrita"
            MyPos = InStr(MyPos + 1, ActiveCell, WordReplacement)
        Wend
        Cells.Find(What:=WordReplacement, After:=ActiveCell, _
            LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
            SearchDirection:=xlNext, MatchCase:=False).Activate
    Loop Until ActiveCell.AddressLocal = FirstCell

Fin:
End Sub
Este código:
a) interrumpe su procedimiento si se selecciona "Cancelar" en cualquiera de los dos "InputBox".
b) tiene previsto salir del procedimiento si no se encuentra la palabra en cuestión.
c) tiene previsto varias ocurrencias de la palabra buscada en la misma celda.

Espero que te sirva.

Última edición por mrocf; 28/03/2007 a las 13:22
  #5 (permalink)  
Antiguo 29/03/2007, 12:01
Avatar de lucasmoadr  
Fecha de Ingreso: marzo-2007
Ubicación: Llavallol, Buenos Aires
Mensajes: 220
Antigüedad: 17 años
Puntos: 5
Re: Crear macro, que busque palabra, y la ponga en negrita

Muchas gracias, pero el tema es qeu si yo tenia alguna palabra en esa celda con formato, me lo elimina, ya sea negrita, color, etc, quiero que me mantenga el formato de las otras palabras.
  #6 (permalink)  
Antiguo 29/03/2007, 13:27
Avatar de abrahamvj  
Fecha de Ingreso: julio-2006
Ubicación: Lima, Peru
Mensajes: 708
Antigüedad: 17 años, 9 meses
Puntos: 18
Re: Crear macro, que busque palabra, y la ponga en negrita

Lucasmoadr, esta bien que no conoscas sobre macros, como bien dijiste en uno d etus mensajes, pero, si tu necesidad de usarlas es tal, como aparentemente se ve, deberias comenzar a aleer sobre ellas, a analizar las que se te envian, etc etc, pues, tampoco me parece bien que estes espeando que simepre otros te hagan el trabajo.

Abraham
  #7 (permalink)  
Antiguo 29/03/2007, 14:06
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años
Puntos: 88
Sonrisa Crear macro, que busque palabra, y la ponga en negrita

Mira Lucasmoadr:
La sugerencia de abrahamvj es muy válida... ¿pero sabes por qué, también?...
Pues porque el estudio y el conocimiento del producto te permitirá realizar tus consultas con más propiedad. Por ejemplo:

lo que tu deseas no es que no se pueda realizar, pero el procedimiento es muy distinto de lo que te hemos mostrado.

Dicho de otro modo: tu consulta incompleta (se te "pasó por alto" mencionar -de entrada- que los caracteres de las celdas tienen algún formato y que los deseas mantener) convierte a lo que te hemos desarrollado en parcialmente poco útil.

Te mando un saludo, y espero que aceptes de buen modo lo que te hemos aconsejado...: es por el bien de todos, claro está.
  #8 (permalink)  
Antiguo 29/03/2007, 14:15
Avatar de lucasmoadr  
Fecha de Ingreso: marzo-2007
Ubicación: Llavallol, Buenos Aires
Mensajes: 220
Antigüedad: 17 años
Puntos: 5
Re: Crear macro, que busque palabra, y la ponga en negrita

realmente la ayuda que pido no es para mi, sino para mi novia que lo necesita para el trabajo . para alivianarlo un poco, realmente no tengo tiempo para verlo ahora, y por eso preguntaba. Perdon si los moleste tratando de que ayuden con sus conocimientos, ya que por lo que veo, este foro es para esto. No es un enojo lo que les digo, sino una preocupacion, porque si ustedes que son expertos en macros, no me pueden ayudar, quien lo hara. saludos
  #9 (permalink)  
Antiguo 29/03/2007, 14:18
Avatar de lucasmoadr  
Fecha de Ingreso: marzo-2007
Ubicación: Llavallol, Buenos Aires
Mensajes: 220
Antigüedad: 17 años
Puntos: 5
Re: Crear macro, que busque palabra, y la ponga en negrita

PD: Gracias por las respuestas anteriores, me fueron de ayuda igual. Salvo las ultimas
  #10 (permalink)  
Antiguo 29/03/2007, 14:30
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años
Puntos: 88
Crear macro, que busque palabra, y la ponga en negrita

Lucasmoadr:
Es una lástima que no estés entendiendo el fondo de la cuestión:

.) usar la palabra "molestia" hacia quienes hemos dedicado un tiempo para tratar de satisfacer tu necesidad de ayudar a tu novia, entiendo que revela falta de consideración hacia quienes -en forma totalmente solidaria y desinteresada- te han tratado de dar una mano...

.) creo que "esquivas" el tema de fondo: no pareces asumir que no has sabido preguntar adecuadamente, por lo que has generado esfuerzos (solidarios y desinteresados) inútiles...

Nuevamente, llamo a tu sentido de la reflexión para entender que tus errores solo requerían un: "perdón muchachos, soy nuevo en esto" (era sencillo, me parece)...

Saludos.
  #11 (permalink)  
Antiguo 29/03/2007, 14:58
Avatar de abrahamvj  
Fecha de Ingreso: julio-2006
Ubicación: Lima, Peru
Mensajes: 708
Antigüedad: 17 años, 9 meses
Puntos: 18
Re: Crear macro, que busque palabra, y la ponga en negrita

Solamente escibo para reafirmar lo escrito por mrocf, y para decirle a lucas unas cosas mas. Ten en cuenta que TODOS los que ayudamos en este foro, lo hacemos con el mayor gusto posible y sin que nadie nos pague a cambio, incluso muchas, pero muchas veces ni siquiera te agradecen, entonces, pero, lo que se hace es AYUDAR, dar indicios, guiar, etc, y tu ya estas pidiendolo TODO hechecito y listo, entonces tu ya no estas solicitando AYUDA sino que te hagan un TRABAJO COMPLETO. quizas para nosotros no fue dificil elaborar esas macros, pero tampoco quiere decir, que ante cada pedido estemos creando nuevas, eso es tiempo, y el tiempo es dinero (y otras cosas mas!!!)

Abraham
  #12 (permalink)  
Antiguo 30/03/2007, 06:15
Avatar de lucasmoadr  
Fecha de Ingreso: marzo-2007
Ubicación: Llavallol, Buenos Aires
Mensajes: 220
Antigüedad: 17 años
Puntos: 5
Re: Crear macro, que busque palabra, y la ponga en negrita

Cita:
Iniciado por lucasmoadr Ver Mensaje
PD: Gracias por las respuestas anteriores, me fueron de ayuda igual. Salvo las ultimas
dije gracias me parece, pero bue, estas discuciones no me interesan, asi que el tema esta cerrado. saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 10:15.