#excel #vba
#excel #vba
Вопрос:
Я работаю над проектом, который автоматически создает отчет в соответствии со значениями inport. На листе 2 у меня есть входные данные типа C10=1000
, C11=150000
и я хочу, чтобы на листе 1 были такие же, как C4= 1,000.00 MWh
и C5= 150,000 Dollar
, и я хочу, чтобы цифры были выделены жирным шрифтом. Я пишу код, подобный этому:
Private Sub CommandButton1_Click()
Dim Range1, Range2
Set Range1 = ThisWorkbook.Sheets(2).Range("C10")
Set Range2 = ThisWorkbook.Sheets(2).Range("C11")
Application.EnableEvents = False
ThisWorkbook.Sheets(1).Range("C4") = Range1.Value amp; " MWh"
ThisWorkbook.Sheets(1).Range("C5") = Range2.Value amp;" Dollar"
With ThisWorkbook.Sheets(1).Range("C4")
.Characters(InStr(ThisWorkbook.Sheets(1).Range("C4").Value, Range1), Len(CStr(Range1))).Font.FontStyle = "Bold"
End With
With ThisWorkbook.Sheets(1).Range("C5")
.Characters(InStr(ThisWorkbook.Sheets(1).Range("C5").Value, Range2), Len(CStr(Range2))).Font.FontStyle = "Bold"
End With
Application.EnableEvents = True
ThisWorkbook.Sheets(1).Activate
End Sub
Но я получаю результаты правильно, но я не могу понять, как добавить запятые между цифрами, которые я пробовал .NumberFormat
, но это не сработало, потому что оно не в правильном формате.
Есть ли какой-нибудь способ сделать это?
Ответ №1:
Вам нужно использовать
.NumberFormat = "#,##0.00 ""Mwh"""
и значение должно быть числовым
.Value = 1000
Затем он будет отображаться как
1,000.00 Mwh
в вашей ячейке.
Комментарии:
1. Конечно, с правильными единицами это должно быть MWh?
2. @SolarMike и, вероятно
Dollar
Dolar
, вместо ссылки наRange2.Value amp;" Dolar"
вопрос.3. Привет, спасибо, мне удалось разделить числа, но теперь все ячейки выделены жирным шрифтом!