Excel formülünde aşağıdaki dizeyi nasıl oluşturabilirim:
Maurice "Roket" Richard
Tek tırnak kullanıyorsam, önemsiz = "Maurice 'The Rocket' Richard"
ama çift tırnak ne olacak?
Excel formülünde aşağıdaki dizeyi nasıl oluşturabilirim:
Maurice "Roket" Richard
Tek tırnak kullanıyorsam, önemsiz = "Maurice 'The Rocket' Richard"
ama çift tırnak ne olacak?
Yanıtlar:
Alternatif olarak, şu CHAR
işlevi kullanabilirsiniz :
= "Maurice " & CHAR(34) & "Rocket" & CHAR(34) & " Richard"
&
ve işareti hemen önce ya da hemen sonra çift tırnak ile bitiştirmek çift-çift tırnak yöntemi kullanarak işe yaramadı.
Üç çift tırnak: " " " x " " "
= "x"
Excel otomatik olarak bir çift tırnak işareti olarak değişecektir. Örneğin:
=CONCATENATE("""x"""," hi")
= "x" merhaba
Bunun için bir işlev kullanıyorum (çalışma kitabında zaten VBA varsa).
Function Quote(inputText As String) As String
Quote = Chr(34) & inputText & Chr(34)
End Function
Sue Mosher'in "Microsoft Outlook Programlama" kitabından. O zaman formülünüz şöyle olur:
="Maurice "&Quote("Rocket")&" Richard"
Bu, Dave DuPlantis'in yayınladığı şeye benzer .
Bunu JSON ile yapmanız gerektiğinde:
=CONCATENATE("'{""service"": { ""field"": "&A2&"}}'")
Bu makroları kullanarak .Formula = "=THEFORMULAFUNCTION("STUFF")"
çalışacak mı?.Formula = "=THEFORMULAFUNCTION(CHAR(34) & STUFF & CHAR(34))"
""
Bir hücrenin boş görünmesini sağlamak için boş veya sıfır uzunluklu bir dize (ör. ) Döndürmek, çalışma sayfası formülünde yaygın bir uygulamadır, ancak VBA'daki formülü Range.Formula veya Range.FormulaR1C1 özelliği aracılığıyla eklerken bu seçeneği yeniden oluşturmak gereksizdir . tırnak içine alınmış bir dize içinde çift tırnak karakterlerini ikiye katlama zorunluluğu.
Çalışma sayfasının özgün METİN işlevi tırnak kullanmadan aynı sonucu verebilir.
'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
Gözüme için kullanma TEXT(,)
yerine ""
temizler yukarı yukarıdaki gibi bile basit bir formül. Bir arama boşluğa neden olduğunda veya IFERROR ile eşleşmediğinde boş bir dize döndürdüğünde hücreye sıfır döndürmekten kaçınmak için VLOOKUP'a boş bir dize ekleme uygulaması gibi daha karmaşık formüllerde kullanıldığında faydalar giderek daha önemli hale gelir .
'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(,))"
İle TEXT(,)
eski yerine ""
boş bir dize sunma yöntemini, size bir formül dizede tırnak karakterleri doğru sayıda sahip olup olmadığını belirlemek için bir abaküs kullanarak durdurmaya alabilirsiniz.
VBA İşlevi
1) .Formula = "=" "BİLGİ FONKSİYONU" "& (CHAR (34) &" "STUFF" "& CHAR (34))"
2) .Formula = "BİLGİ FONKSİYONU" "PERSONEL" ""
İlk yöntem, hesaplanan değerle sonuçlanan bir hücreye formül yazmak için vba kullanır:
THEFORMULAFUNCTION "STUFF"
İkinci yöntem, hücreye bir dize yazmak için vba değerini kullanır ve bu da şu değerle sonuçlanır:
THEFORMULAFUNCTION "STUFF"
Excel Sonucu / Formülü
1) = "BİLGİ FONKSİYONU" & (CHAR (34) & "STUFF" & CHAR (34))
2) BİLGİ "PERSONEL"
="Maurice "&"""TheRocker"""&" Richard"
"Excel formülünde aşağıdaki dizeyi nasıl oluşturabilirim:" "Excel formüllerinde çift tırnak içeren dizeler nasıl oluşturulur?" iki tek tırnak:
Solda Calibri bir Excel çalışma sayfasından, sağda bir VBA penceresinden bir ekran alıntısı var. Benim görüşüme göre @YonahW tarafından belirtildiği gibi kaçan 'eller aşağı' kazanıyor, ancak iki tek tırnak iki katlamadan daha fazla yazmak değil ve fark VBA'da ek tuş vuruşları olmadan makul bir şekilde görünürken, potansiyel olarak bir elektronik tabloda fark edilmiyor.
""
Belki de Mac Excel 2011 var diye var