12 ответов:
кроме того, вы можете использовать
CHARфункция:= "Maurice " & CHAR(34) & "Rocket" & CHAR(34) & " Richard"
три двойные кавычки:
" " " x " " "="x"Excel автоматически изменится на одну двойную кавычку. например:=CONCATENATE("""x"""," hi")=" x " привет
Я использую функцию для этого (если книга уже есть в VBA).
Function Quote(inputText As String) As String Quote = Chr(34) & inputText & Chr(34) End Functionэто из книги Сью Мошер "Программирование Microsoft Outlook". Тогда ваша формула будет:
="Maurice "&Quote("Rocket")&" Richard"Это похоже на то, что Дейв DuPlantis выложил.
использовать chr(34) Код: Joe = "Привет", & Chr (34) & " Joe " & Chr (34) Активная ячейка.Значение = Джо
результат: Привет, "Джо"
будет ли это работать для макросов с помощью
.Formula = "=THEFORMULAFUNCTION("STUFF")"так было бы: будет ли это работать для макросов с помощью.Formula = "=THEFORMULAFUNCTION(CHAR(34) & STUFF & CHAR(34))"
возврат пустой строки или строки нулевой длины (например,
"") чтобы ячейка выглядела пустой, это обычная практика в Формуле рабочего листа, но воссоздание этой опции при вставке формулы через листа текст может дать тот же результат без использования кавычек.'formula to insert into C1 - =IF(A1<>"", B1, "") range("C1").formula = "=IF(A1<>"""", B1, """")" '<~quote chars doubled up range("C1").formula = "=IF(A1<>TEXT(,), B1, TEXT(,))" '<~with TEXT(,) insteadк моему глазу, используя
TEXT(,)на месте""очищает даже простую формулу, как выше. Преимущества становятся все более значимыми при использовании в более сложных формулах, таких как практика добавления пустой строки к VLOOKUP чтобы избежать возврата нуля в ячейку, когда поиск приводит к пустой или возвращающей пустую строку на no-match с IFERROR.'formula to insert into D1 - =IFERROR(VLOOKUP(A1, B:C, 2, FALSE)&"", "") range("D1").formula = "=IFERROR(VLOOKUP(A1, B:C, 2, FALSE)&"""", """")" range("D1").formula = "=IFERROR(VLOOKUP(A1, B:C, 2, FALSE)&TEXT(,), TEXT(,))"С
TEXT(,)замена старого""метод доставки пустой строки, вы можете перестать использовать счеты, чтобы определить, есть ли у вас правильное количество символов кавычек в строке формулы.
функция VBA
1) .Формула = " = ""THEFORMULAFUNCTION "" &(CHAR (34) & ""STUFF"" & CHAR(34))"
2) .Формула = "THEFORMULAFUNCTION ""STUFF"""
первый метод использует vba для записи формулы в ячейку, которая приводит к вычисленному значению:
THEFORMULAFUNCTION "STUFF"второй метод использует vba для записи строки в ячейку, которая приводит к значению:
THEFORMULAFUNCTION "STUFF"Excel Результат / Формула
1) = "THEFORMULAFUNCTION" &(CHAR (34) & "STUFF" & CHAR(34))
2) THEFORMULAFUNCTION "STUFF"
есть другой способ, хотя больше для "как я могу построить следующую строку в Формуле Excel: "Морис" ракета "Ричард"", чем " как создать строки, содержащие двойные кавычки в формулах Excel? ", который просто использовать две одинарные кавычки:
слева Калибр вырезается из листа Excel,а справа-из окна VBA. На мой взгляд, побег, как упоминалось @YonahW, выигрывает "руки вниз", но два одиночных котировки не более чем два двойника, и разница достаточно очевидна в VBA без дополнительных нажатий клавиш, в то время как, потенциально, не заметна в электронной таблице.
объединения
"как ячейка ceparate:A | B | C | D 1 " | text | " | =CONCATENATE(A1; B1; C1); D1 displays "text"

Comments