我有一张excel表格,我希望以CSV格式存储,然后将CSV中的数据加载到oracle数据库的表格中。
我有一个VBscript将excel文件转换为CSV,但excel表的格式有点不同,因此CSV文件没有正确填充。我附上了一个下载该样本excel表的链接。Excel sheet
如果您注意到红色文本是字段,并且它们各自的数据位于下一个单元格中。标题日期数据的示例是1/1/2000。现在当我使用该vbscript转换它时,我在这里附加一个链接来下载该csv。
我想删除所有这些逗号,并删除第1列(长度为10)和其他所有逗号。 CSV文件中只应包含标题及其数据。能帮帮我吧。
提前致谢。 VBscript代码在这里: -
WorkingDir = "C:\Users\vijaywp\Desktop"
Extension = ".XLS"
Dim fso, myFolder, fileColl, aFile, FileName, SaveName
Dim objExcel,objWorkbook
Set fso = CreateObject("Scripting.FilesystemObject")
Set myFolder = fso.GetFolder(WorkingDir)
Set fileColl = myFolder.Files
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = False
objExcel.DisplayAlerts= False
For Each aFile In fileColl
ext = Right(aFile.Name,4)
If UCase(ext) = UCase(extension) Then
'open excel
FileName = Left(aFile,InStrRev(aFile,"."))
Set objWorkbook = objExcel.Workbooks.Open(aFile)
SaveName = FileName & "csv"
objWorkbook.SaveAs SaveName, 23
objWorkbook.Close
End If
Next
Set objWorkbook = Nothing
Set objExcel = Nothing
Set fso = Nothing
Set myFolder = Nothing
Set fileColl = Nothing
转换完成后,我希望将CSV数据加载到Oracle数据库表中。请帮忙。
以下是预期CSV输出的链接: - Expected CSV Output
答案 0 :(得分:0)
如果您想在CSV文件中使用自定义格式,请逐行逐行读取Excel,并在选择时将数据写入CSV。
如果列中的逗号是唯一的问题,那么使用选项双引号列文本,以便其中的逗号不会出现问题。
答案 1 :(得分:0)
这可能会令人失望,但是,首先进入csv可能根本就没有必要。你有Excel,你想要数据到Oracle表。让我们说一下我们的Oracle表" member_list"有三列:姓名,电话,城市。我们的Excel数据在列A中有名称,在列B中有电话,在列C中有城市。我们的标题是在Row2中的Row1数据开始。 在D2列中输入以下公式: ="进入member_list("& $ A $ 1&","& $ B $ 1&","& $ C $ 1& ;")价值观("& A2&",'"& B2&"''" &安培; C2&安培;")" 将此相同的语句复制到每个数据行。 返回SQLDeveloper类型:全部插入 然后复制你所有的" D"列"到语句" 进入SQLDeveloper。最后输入: 从双重选择*;
执行,您现在已将所有Excel数据插入Oracle。