我正在使用VBA DoCmd.TransferText
命令將數據從CSV文本文件導入到Access數據庫中的新表中。我遇到了一些問題,其中某些文件的前三列中的文本數據導入爲貨幣。我無法弄清楚發生了什麼事。TransferText不正確地導入像「FS ###」這樣的字符串作爲貨幣
Here是與正確導入(VollintineLines.csv)一個CSV沿測試數據庫...
PipeID,UpstreamMH,DownstreamMH,Diameter,GISLength,Status
WS010353S,WS010353,WS010163,36,227.1984614,Fully Surveyed as Phase Work
WS011155S,WS011155,WS011154,8,418.5435318,Not Surveyed
WS011154S,WS011154,WS011153,8,303.9618911,Fully Surveyed as Phase Work
...和一個不(CourtLines.csv)。
PipeID,UpstreamMH,DownstreamMH,Diameter,GISLength,Status
FS020628S,FS020628,FS020462,10,278.72,Not Surveyed
FS020463S-1,FS020463,FS020462,12,248.39,Not Surveyed
FS020216S,FS020216,FS020215,12,227.53,Fully Surveyed as Phase Work
(請忽略數據庫中的無名對象,它只是要弄清楚這到底是怎麼回事,我沒有理會事物命名。)
這裏是進口的代碼,你有啓用Microsoft Office 16.0對象庫參考。
Private Sub Command0_Click()
Dim Path As FileDialog
Dim FileName As Variant
DoCmd.SetWarnings False
DoCmd.Hourglass True
Set Path = Application.FileDialog(msoFileDialogFilePicker)
With Path
.AllowMultiSelect = False
.Title = "Select your File"
.Filters.Add "All Files", "*.*"
If .Show = -1 Then
For Each FileName In .SelectedItems
DoCmd.TransferText acImportDelim, , "TempPipeData", FileName, True
Next FileName
Else
MsgBox "No File Selected to Import."
End If
End With
DoCmd.SetWarnings True
DoCmd.Hourglass False
End Sub
測試數據庫的ZIP文件缺少Access DB的文件名! –
現在已修復,對不起! –