Привет, Необходимо сформировать строку, например: "Проезд 12.34 Р (документы прилагаются)." Денежный символ постоянно меняется. Ниже пример, как пробовал, но так форматируется только число без подставления денежного символа.
Как скопировать денежный символ из ячейки, имеющий денежный формат, и применить его к числу, которое уже вставить в строку? По идее необходимо сделать аналог FormatCurrency, но только брать денежный формат с уже настроенной ранее ячейки.
Привет, Необходимо сформировать строку, например: "Проезд 12.34 Р (документы прилагаются)." Денежный символ постоянно меняется. Ниже пример, как пробовал, но так форматируется только число без подставления денежного символа.
Как скопировать денежный символ из ячейки, имеющий денежный формат, и применить его к числу, которое уже вставить в строку? По идее необходимо сделать аналог FormatCurrency, но только брать денежный формат с уже настроенной ранее ячейки.Vagmat
Сообщение отредактировал Vagmat - Суббота, 01.08.2020, 23:24
Благодарю за подсказку. Что бы не морочиться с перебором строк сделал следующим образом: 1 Беру интересующий формат из ячейки .NumberFormatLocal 2 Присваиваю его свободной ячейки 3 Вставляю в эту ячейку полученную сумму 4 Из ячейки получаю значение через .Text 5 Формирую необходимую строку из "бла бла" & ххх.Text и вставляю в необходимую ячейку 6 Очищаю ячейку из п.2
Благодарю за подсказку. Что бы не морочиться с перебором строк сделал следующим образом: 1 Беру интересующий формат из ячейки .NumberFormatLocal 2 Присваиваю его свободной ячейки 3 Вставляю в эту ячейку полученную сумму 4 Из ячейки получаю значение через .Text 5 Формирую необходимую строку из "бла бла" & ххх.Text и вставляю в необходимую ячейку 6 Очищаю ячейку из п.2Vagmat
Была идея скопировать полностью формат, но что-то пошло не так, поэтому было решено получить знак. Но имея знак нужно понимать куда его поставить в начале или в конце, а это дополнительные действия. Поэтому нашел выход разными копированиями, но тут важно, что бы в ячейку из которой берем .Text влазило значение иначе, если не влезет, то скопируется строка "" или "####".
Function StringCreation(StrBegin As Variant) As String Dim Str As String
Sheets(1).Cells(96, "CG").NumberFormatLocal = Sheets(1).Cells(96, "S").NumberFormatLocal Sheets(1).Cells(96, "CG").Value = StrBegin Str = Sheets(1).Cells(96, "CG").Text Sheets(1).Cells(96, "CG").ClearContents StringCreation = Str End Function
Была идея скопировать полностью формат, но что-то пошло не так, поэтому было решено получить знак. Но имея знак нужно понимать куда его поставить в начале или в конце, а это дополнительные действия. Поэтому нашел выход разными копированиями, но тут важно, что бы в ячейку из которой берем .Text влазило значение иначе, если не влезет, то скопируется строка "" или "####".