Так у меня есть несколько столбцов чисел, его переменной так что позволяет сказать 3 только для примераExcel-VBA перевод формат шрифта между ячейками через строки CONCAT
Column B Column C Column D
**520** 600 **550**
на основе других процессов, позволяет сказать столбец A и столбца C выделены полужирным шрифтом. Я хочу, чтобы объединить их в одну ячейку и сохранить форматирование жирным шрифтом, например:
Column A
**520**,600,**550**
и это будет повторяться через переменное число строк, несколько столбцов, имеющих два полужирный, некоторые один смелый, немного имеющий ни одного.
У кого-нибудь есть простой способ получить смелое форматирование? Я получаю строку в cat и пишу в новую ячейку, но я не знаю, как получить формат для новой конкатенированной ячейки. Нижеприведенный код - это всего лишь внутренний цикл, и я использую 2 для одной строки вместо переменной для простоты.
Вот что у меня есть для внутреннего цикла и смелое не несет через:
Sub OneCell()
Dim i as Integer 'column number
Dim str1 as String 'String storage
i = 2 'initialize col num
str1 = Cells(2, i).value 'initialize str1
'Outer loop
Do
'....code for outer loop iterating rows
'Inner loop to concatenate values into one string
Do
str1 = str1 & "," & Cells(2,i+1).Value
i = i + 1
Loop until Cells(2,i+1).Value = ""
'Put concatenated string in cell(2,1)
Cells(2,1).Value = str1
Loop Until 'some condition of rows is met
End Sub
Я думаю, вам нужно будет использовать свойство Characters и вести запись того, что смело, когда вы идете (например, в массиве), поместить текст в ячейку, а затем пройти через массив, чтобы смелить соответствующие биты. – SJR
Эй, спасибо. Как ни странно, у меня уже есть эти числа, хранящиеся как свойства в массиве пользовательских объектов (на самом деле есть два дополнительных свойства, связанных с каждым из этих значений) ... плохо вглядитесь в него. – Dan
Мне также не хватает того, как первая ячейка, если полужирный, переносится. Скажем, ячейка B2 выделена жирным шрифтом, логика начинается с ячейки C2 и пропускается, но если я отрегулирую значение инициализации от i до 1, он устанавливает логику для начала в ячейке B2, а затем вставляет запятую перед ней в str1 ... так затем я повторно вставляю функцию MID перед форматированием, а затем первый символ первой ячейки при переносе не выделяется жирным шрифтом. Жаль, что с ним больше. – Dan