2017-01-23 2 views
-2

У меня есть код ниже VBA, а A и B держат несколько строк. Я хочу объединить эти значения с некоторыми другими строками и сохранить результат в другой ячейке, но я хочу, чтобы только строки в A и B были отформатированы как полужирное, а остальное как обычный текст.Как преобразовать часть значения ячейки в жирный

Set A = Worksheets("Mapping").Cells(rowNumber, columnNumber) 
Set B = Worksheets("Mapping").Cells(rowNumber, 3) 

' E.g.: A="currency", B="Small Int" 

Worksheets("TestCases").Cells(i, 2) = "Verify the column " & A & " has same Data type " & B & " in code as well as Requirement document" 

Ожидаемый результат:

Проверьте столбец валюты имеет тип же данные Small Int в коде, а как требование документа

Примечание: Значения A и B продолжают меняться, поэтому мы не можем использовать функцию Characters().

Любая помощь будет высоко оценена.

+0

Вы не можете преобразовать переменную полужирный (я не могу вспомнить ни одного причина, почему вы хотите это сделать). Однако вы можете изменить способ отображения переменной в зависимости от того, где вы хотите ее отображать. Вы можете [отобразить текст жирным шрифтом в 'MsgBox'] (https://www.google.com.br/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=vba%20msgbox % 20bold) или [отобразить текст в жирном формате в ячейке] (https://www.google.com.br/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=vba%20cell% 20font% 20bold). Если вы хотите любой из них, Google - ваш друг и звоните, помогите вам с ним –

+0

Возможный дубликат [Excel vba задает выделенный текст строки в ячейке?] (Http://stackoverflow.com/questions/11644566/excel- vba-set-bold-specific-text-of-string-in-cell) – Lankymart

+0

Спасибо за ваш ответ. Я обновил вопрос, не могли бы вы проверить его еще раз? –

ответ

-1

Функция, чтобы изменить стиль шрифта является:

[Cells/Cell range].Font.FontStyle = "Bold" 

Поэтому что-то вроде могли бы работать:

Worksheets("Mapping").Cells(rowNumber, columnNumber).Font.FontStyle = "Bold" 

Вы также можете сделать вещи Подчеркивание, strikethroughs и т.д ... Я нашел, что это на самом деле полезное сообщение в блоге, которое проходит через все, что вам нужно знать:

http://software-solutions-online.com/excel-vba-formating-cells-and-ranges/#Jump4

+0

Спасибо за ваш ответ. Я обновил вопрос, не могли бы вы проверить его еще раз? –

-1

Я думаю, вы должны искать эту информацию сами ... Тем не менее, это код, который вы должны использовать, чтобы преобразовать некоторые данные ячейки полужирным шрифтом:

Worksheets("Mapping").Cells(rowNumber, columnNumber).Font.Bold = True 
+0

Спасибо за ваш ответ. Я обновил вопрос, не могли бы вы проверить его еще раз? –

+2

У меня больше нет комментариев. Как я уже сказал, вы не должны задавать такие вопросы ... Похоже, вы еще не сделали достаточно исследований, прежде чем спрашивать. Если ваша проблема заключается в том, чтобы преобразовать переменную в жирный шрифт, вы должны просто сделать то, что вам нужно, а затем преобразовать ее в полужирный, как мы сказали. –

0

Вы можете использовать метод Characters() - вы просто необходимо отслеживать длину подстрок. Лично я хотел бы хранить статические строки в переменных, так что я могу изменить их позже, без необходимости пересчитывать индексы вручную:

' Untested 

Set A = Worksheets("Mapping").Cells(rowNumber, columnNumber) 
Set B = Worksheets("Mapping").Cells(rowNumber, 3) 
Dim S1 = "Verify the column " 
Dim S2 = " has same Data type " 
Dim S3 = " in code as well as Requirement document" 

With Worksheets("TestCases").Cells(i, 2) 
    .Value = S1 & A & S2 & B & S3 
    .Characters(Len(S1), Len(A)).Font.Bold 
    .Characters(Len(S1)+Len(A)+Len(S2), Len(B)).Font.Bold 
End With 
Смежные вопросы