Em uma formula concatenada, por exemplo vou digitar na célula A3 a seguinte formula: A1&" “&B1&” "&C1, e quero que na célula A3, somente B1 apareça em negrito, como faço?
Olá! copiei o código abaixo que está em detalhes na revista (pdf) LibreOffice Magazine 23 de agosto de 2016.
Conteúdos da LibreOffice Magazine
Código Basic:
REM ***** BASIC *****
Sub NegritarEmCelulasConcatenadas
' ... comentários
Dim i As Integer
Dim ignorar As Integer
Dim Doc As Object
Dim Sheet As Object
Dim oCell As Object
Dim oCellBold As Object
Dim oCellString As String
Dim oCellBString As String
' vou usar a planilha aberta
Doc = ThisComponent
' abaixo poderia usar Sheet = Doc.Sheets.getByName("Planilha1")
' oCell = Sheet.getCellRangeByName("A3")
oCell = Doc.getSheets().getByIndex(0).getCellRangeByName("A3")
oCellBold = Doc.getSheets().getByIndex(0).getCellRangeByName("B1")
'coloco os conteúdos de tipo String nas variáveis
ocellString = oCell.String
ocellBString = oCellBold.String
'crio um cursor
oCursor = oCell.createTextCursor
oCursor.gotoStart(false)
'localizo a posição da palavra B1 (porexemplo=”amor”) na célula A3 e ponho em oString
oString = InStr(1, oCellString, oCellBString)
'se achei, o valor é maior que zero e movimento o cursor na string
If oString > 0 then
ignorar = oString - 1
oCursor.goRight(ignorar,false)
oCursor.goRight(0,false)
'sombreio apenas a palavra escolhida de acordo com seu tamanho
for i = 1 to Len(oCellBString)
oCursor.goRight(1,true)
Next i
'altero a fonte do texto, aplico a constante ITÁLICO e NEGRITO na propriedade do Cursor
oCursor.CharFontName = "Times New Roman" ' nome da fonte
oCursor.CharPosture = com.sun.star.awt.FontSlant.ITALIC ' itálico
oCursor.CharWeight = com.sun.star.awt.FontWeight.BOLD ' negrito
oCursor.goRight(0,false)
End if
End Sub