2013-06-11 86 views
0

目前,我有一個包含所有基數和字母的工作表。我希望所有包含文本的單元格都用引號改變。下面的代碼在所有單元格中放置兩個單引號。有沒有什麼辦法可以在文字上加上雙引號?在excel單元中放置1個雙引號而不是2個單引號

無論我使用VBA還是試圖在Excel中執行它,我總是收到錯誤。

Sub Macro2() 
' 
' Macro2 Macro 
' 

' 
    Range("B:B,D:D,F:F").Select 
    Range("B1").Activate 
    Selection.NumberFormat = """''""@""''""" 
    Columns("G:G").Select 
    Selection.NumberFormat = "mm/dd/yy;""''"" @""''""" 
    Columns("E:E").Select 
    Selection.NumberFormat = """''""d-mmm""''""" 
    Columns("C:C").Select 
    Selection.NumberFormat = """''""m/d/yyyy""''""" 

    Dim LRow As Long 
' 
    LRow = Cells(Rows.Count, "A").End(xlUp).Row 


    Range("I1").Select 
    ActiveCell.FormulaR1C1 = "=""''""&0&RC[-8]&""''""" 
    Range("I1").Select 
    Selection.AutoFill Destination:=Range("I1:I" & LRow), Type:=xlFillDefault 
    Columns("I:I").Select 
    Selection.Copy 
    Columns("A:A").Select 
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
     :=False, Transpose:=False 
    Columns("I:I").Select 
Selection.Delete Shift:=xlToLefT 

End Sub 

回答

0

例如

Selection.NumberFormat = "\""@\""" 

,這樣的「」由\爲前綴的帶引號的字符串內的報價逃脫它作爲一種數字格式字符;-)

+0

它是\還是/做轉義的數字格式? – Jonny

+0

它是\我發佈的代碼 – JosieP

0

對於雙引號嘗試使用Chr(34)

Sub DoubleQuotes 
    Dim str as string 

    str = "This has double quotes" 
    Debug.Print chr(34) & str & chr(34) //Prints "This has double quotes" 
End Sub 
+0

是一種使用chr(34)從宏內部打印它的方式,就像我有的一樣?你在起訴Debug.Print。你能寫一個可以在上面的宏中使用chr(34)的示例代碼行嗎? – Jonny