Добрый день всем.
Суть задачи: выгружается список категорий и подкатегорий в одну ячейку. Нужно Категории выделить жирным шрифтом, подкатегории обычным. Пример:
Категория 1
подкатегория 1
подкатегория 2
подкатегория 3
Категория 2
подкатегория 1
подкатегория 2
подкатегория 3
Сами данный выгружаются в таком же виде, только без выделения. Были добавлены символы табуляции вокруг Категорий для облегчения написания макроса. Макрос срабатывает каждый раз, когда мы переключаемся на страницу, когда активизируем.
Текст макроса:
Хотя табуляторы и не видно, но когда переключаешься на ячейку, то директору не понравилось.
Так вот, когда я в макросе пишу заменить табуляторы на пустышку, то весь текст в ячейке становится просто жирным.
Пытался записать ручным макросом - тоже самое. Такое чувство, что при замене все оформление сбивается.
Подскажите и дайте совет.
Заранее благодарен
Суть задачи: выгружается список категорий и подкатегорий в одну ячейку. Нужно Категории выделить жирным шрифтом, подкатегории обычным. Пример:
Категория 1
подкатегория 1
подкатегория 2
подкатегория 3
Категория 2
подкатегория 1
подкатегория 2
подкатегория 3
Сами данный выгружаются в таком же виде, только без выделения. Были добавлены символы табуляции вокруг Категорий для облегчения написания макроса. Макрос срабатывает каждый раз, когда мы переключаемся на страницу, когда активизируем.
Текст макроса:
Код |
---|
Public Sub boldFontTargets() Dim actSheet As Worksheet Dim startPos, endPos, countSymbol As Integer Dim flag, flagBold As Boolean Dim searchStr, newValue As String Set actSheet = ThisWorkbook.ActiveSheet flag = True endPos = 0 startPos = 0 flagBold = True searchStr = vbTab While flag If (startPos = 0) Then startPos = InStr(1, actSheet.Cells(5, 3), searchStr) End If endPos = InStr(startPos + 1, actSheet.Cells(5, 3), searchStr) If (endPos = 0) Then countSymbol = Len(actSheet.Cells(5, 3)) - startPos Else countSymbol = endPos - startPos End If If (IsNumeric(startPos) And IsNumeric(endPos) And startPos > 0 And endPos > 0) Then With actSheet.Cells(5, 3).Characters(startPos, countSymbol).Font .Bold = flagBold End With startPos = endPos flagBold = Not flagBold Else flag = False End If Wend End Sub |
Хотя табуляторы и не видно, но когда переключаешься на ячейку, то директору не понравилось.
Так вот, когда я в макросе пишу заменить табуляторы на пустышку, то весь текст в ячейке становится просто жирным.
Пытался записать ручным макросом - тоже самое. Такое чувство, что при замене все оформление сбивается.
Подскажите и дайте совет.
Заранее благодарен