我的电子表格看起来像这样,有三列A,B和C:
1 41309.5 の
2 23509.54 に
3 22216.8 は
我需要做的是创建一个文本文件,其中文件的每一行如下所示:
Insert into freqleeds (id, freq, text) values ( 1, 41309.5, 'の')
..
有人可以告诉我如何做到这一点吗?
答案 0 :(得分:0)
不使用VBA甚至复杂功能,您可以在D列创建一个支持列,使用以下公式将Concatenate()
模板包含变量:
="Insert into freqleeds (id, freq, text) values (" & A1 & "," & B1 & "," & C1 & ")"
在D1单元格中粘贴此公式后,可以将其向下拖动,为每行创建特定的db语句。
之后,您应该选择整个D列并复制它:
然后你应该将内容粘贴到记事本中。
完成。
Ps:如果您想自动执行此作业,可以创建一个宏,将此连接函数应用于电子表格中包含内容的每一行,并根据您的需要对其进行过滤,并{{3} }。
答案 1 :(得分:0)
尝试:
Sub test()
Dim Ws As Worksheet, i As Long, Fr As Long, Lr As Long, St0 As String, St As String
Set Ws = ActiveSheet
St0 = "Insert into freqleeds (id, freq, text) values ( "
Fr = 1 'First row
Lr = Ws.Cells(Ws.Rows.Count, "A").End(xlUp).Row
For i = Fr To Lr
St = St & St0 & Ws.Cells(i, 1) & ", " & Ws.Cells(i, 2) & ", '" & Ws.Cells(i, 3) & "')" & vbNewLine
Next
With CreateObject("Scripting.FileSystemObject")
.CreateTextFile("d:\00000.txt", True, True).Write St ' change the file name
End With
End Sub