VS consider ' as a comment note 公式

VS consider ' as a comment note formula

我正在尝试使用 excel 互操作打开 vb.net 中的 excel 文件 然后将公式添加到 F2 然后另存为 excel as csv

有人能告诉我如何在我编写 ' 时将 ' 与公式 cs 中的数字连接起来吗 Visual studio 将其视为注释而不是公式

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
    Dim newFileName As String = "Libanpost" + Date.Today.ToString("ddMMyyyy") + ".csv"
    Dim oExcelFile As Object



    Try
        oExcelFile = GetObject("c:\database", "Excel.Application")
    Catch
        oExcelFile = CreateObject("Excel.Application")
    End Try

    oExcelFile.Visible = True
    Dim strfilename As String = "Libanpost" + Date.Today.ToString("ddMMyyyy") + ".xls"
    Dim strFolderPath As String = "c:\database"

    oExcelFile.Workbooks.Open(strFolderPath + "\" + strfilename)
    Dim oExcelsheet As Excel.Worksheet
    oExcelsheet = oExcelFile.sheets("table1")
    oExcelsheet.Range("f1").Value = "CRC"
    oExcelsheet.Range("f2").Formula = " = IF(LEN(A2)=2,(CONCATENATE("'00000",A2)),IF(LEN(A2)=3,CONCATENATE("'0000",A2),IF(LEN(A2)=4,CONCATENATE("'000",A2),IF(LEN(A2)=5,CONCATENATE("'00",A2),IF(LEN(A2)=6,CONCATENATE("'0",A2),A2)))))"


    oExcelFile.DisplayAlerts = False


    oExcelFile.ActiveWorkbook.SaveAs(Filename:=strFolderPath + "\" + newFileName, FileFormat:=Excel.XlFileFormat.xlCSV, CreateBackup:=False)


    oExcelFile.ActiveWorkbook.Close(SaveChanges:=False)

    Dim file_count As Integer = File.ReadAllLines(strFolderPath + "\" + newFileName).Length
    MsgBox(file_count)


    oExcelFile.DisplayAlerts = True


    oExcelFile.Quit()


    oExcelFile = Nothing

问题是您在字符串文字中包含了双引号 (")。字符串中的第一个双引号被认为是字符串的结尾。它后面恰好跟有一个单引号,表示注释的开头。如果在字符串文字中包含双引号,则需要有两个。这是更正后的语句(为了便于阅读,我将其分成三行)。

oExcelsheet.Range("f2").Formula = "=IF(LEN(A2)=2,(CONCATENATE(""'00000"",A2))," _
  & "IF(LEN(A2)=3,CONCATENATE(""'0000"",A2),IF(LEN(A2)=4,CONCATENATE(""'000"",A2)," _
  & "IF(LEN(A2)=5,CONCATENATE(""'00"",A2),IF(LEN(A2)=6,CONCATENATE(""'0"",A2),A2)))))"