modificaciones en el texto de comentarios

25/04/2004 - 11:20 por Jesús Román | Informe spam
Hola, Buenos dias para todos!

Selection.Comment.Shape.TextFrame.Characters(5, 15).Font.Bold = True

La linea anterior me cambia a negrita los caracteres entre el 5 y 15 de un
comentario, la cuestion sería que en lugar de numerar los caracteres en
negrita lo hiciera por bloques de caracteres (palabras), pues tengo que
hacer cambios en muchos comentarios y puedo localizar con facilidad los
bloques ya que el numero de bloques es siempre el mismo, lo que no ocurre
con el número de caracteres.
 

Leer las respuestas

#1 Fernando Arroyo
25/04/2004 - 13:22 | Informe spam
Prueba con algo parecido a esto (estoy seguro de que tendrás que modificar el código, pero espero que al menos te sirva de ejemplo):

Type MiPos
inicio As Integer
fin As Integer
End Type

Function Posiciones(strTexto As String, numPalabra As Integer) As MiPos
Dim m_MiPos As MiPos
Dim mtrT As Variant, n As Integer, intPos As Integer

mtrT = Split(strTexto, " ")

For n = 0 To numPalabra - 2
intPos = intPos + Len(mtrT(n))
Next n

m_MiPos.inicio = intPos + numPalabra - 1
m_MiPos.fin = Len(mtrT(numPalabra - 1)) + 1

Posiciones = m_MiPos
End Function

Sub PonerEnNegritaUnaPalabra()
Dim m_MiPos As MiPos
Dim intQuéPalabra As Integer

With Worksheets("Hoja1").Range("A1").Comment.Shape.TextFrame 'Celda en que se encuentra el comentario
.Characters.Font.Bold = False 'Poner todo el texto del comentario en "no negrita"
intQuéPalabra = Application.InputBox("¿Qué número de palabra desea poner en negriga?" & vbNewLine & "(cero para salir)", Type:=1)
If intQuéPalabra = 0 Then Exit Sub
m_MiPos = Posiciones(.Characters.Text, intQuéPalabra)
.Characters(m_MiPos.inicio, m_MiPos.fin).Font.Bold = True
End With
End Sub


Para que funcione tal como está escrito, es necesario que en el libro haya una hoja llamada Hoja1 cuya celda A1 tenga un comentario.
Un saludo.


Fernando Arroyo
MS MVP - Excel


"Jesús Román" <CRISONIA3(texto inactivo)@terra.es> escribió en el mensaje news:opLic.4700418$
Hola, Buenos dias para todos!

Selection.Comment.Shape.TextFrame.Characters(5, 15).Font.Bold = True

La linea anterior me cambia a negrita los caracteres entre el 5 y 15 de un
comentario, la cuestion sería que en lugar de numerar los caracteres en
negrita lo hiciera por bloques de caracteres (palabras), pues tengo que
hacer cambios en muchos comentarios y puedo localizar con facilidad los
bloques ya que el numero de bloques es siempre el mismo, lo que no ocurre
con el número de caracteres.




Preguntas similares