vbexcel導入資料庫表
❶ 用vb將Excel中的數據寫入資料庫
Private Sub Command1_Click()
Dim fileadd As String
CommonDialog1.ShowOpen
CommonDialog1.Filter = "xls文件(*.xls)|*.xls" '選擇你要的文件
fileadd = CommonDialog1.FileName
If fileadd = "" Then Exit Sub
Set xlApp = CreateObject("Excel.Application") '創建EXCEL對象
Set xlBook = xlApp.Workbooks.Open(fileadd) '打開已經存在的EXCEL工件簿文件
xlApp.Visible = False ' = True '設置EXCEL對象可見(或不可見)
Set xlSheet = xlBook.Worksheets(1) '設置活動工作表
For R = 1 To 99999 '行循環
If LTrim(RTrim(xlBook.Worksheets(1).Cells(R, 1))) <> "" Then
Call Dosql("INSERT INTO CB_JiXieFeiYong (danwei_name) VALUES (" & LTrim(RTrim(xlBook.Worksheets(1).Cells(R, 1))) & ")")
Else
R = 99999 + 1
End If
Next R
xlApp.DisplayAlerts = False '不進行安全提示 '
Set xlSheet = Nothing '
Set xlBook = Nothing '
xlApp.Quit '
Set xlApp = Nothing
Unload Me
End Sub
Private Sub Dosql(ByVal tn As String) '執行SQL語句
Dim sql As String
Set conn = New ADODB.Connection
conn.ConnectionString = condstr
conn.Open
conn.Execute tn
conn.Close
End Sub
這段代碼估計對你有用。
❷ vb excel導入資料庫怎麼做
VB存資料庫的做過,EXCEL的沒試過,應該都差不多吧,我當時也是網上找的資料學的,你也可以查一下相關資料,有時候語句都是寫的成熟的,只要替換資料庫名就可以了。
另外對於你的這個存儲過程,我建議你分開來做,先做全部存儲。全部存儲功能實現了再做數據比對及不導入操作,最後再實現提示重復訂單功能。因為個人感覺這三個東西每一個處理起來都需要時間來測試的,分開來把問題簡單化容易成功一些。
❸ vb將excel導入資料庫
沒錯,Access自帶導入外部數據的功能,可以直接導入Excel,不過如果你實在想了解一下用VB怎麼做的話,可以參考下面是我搞過的自用的讀取Excel導入資料庫的代碼。必須建立了資料庫,以及數據表和相應欄位才行,要自動創建數據表我不會。總之,這下面是導入數據的過程,希望能對你有所幫助。
資料庫DataBase.mdb ,表名data
Excel文件名test.xls ,目標工作表sheet1
Private Sub Command1_Click()
'工程->引用->Microsoft ActiveX Data Objects 2.X Library
On Error Resume Next
Dim i%, n%, l%
Dim Conn As New ADODB.Connection
Dim Rs As New ADODB.Recordset
Dim Cnt As Integer
Dim xConn As New ADODB.Connection
Dim xRs As New ADODB.Recordset
Dim xCnt As Integer
Conn.CursorLocation = adUseClient
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & App.Path & "\DataBase.mdb"
If Rs.State <> adStateClosed Then Rs.Close
Rs.Open "select * from data", Conn, adOpenKeyset, adLockOptimistic
xConn.CursorLocation = adUseClient
'連接Excel的字元串,後面的「HDR=yes」需要注意,它的意思是把Excel表第一行作為欄位名,第二行開始方是有效數據。HDR=no則反之,從第一行開始就看做有效數據。
xConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\test.xls;Extended Properties='Excel 8.0;HDR=yes;IMEX=1'"
If xRs.State <> adStateClosed Then xRs.Close
'像打開資料庫一樣,使用SQL語言,打開名稱為「sheet1」的工作表
xRs.Open "select * from [sheet1$]", xConn, adOpenStatic, adLockReadOnly
xCnt = xRs.RecordCount
If xCnt = 1 Then '因為HDR=yes,必有1行表頭數據
MsgBox "請確認「test.xls」的「sheet1」工作簿內容不為空!否則無法導入任何數據!"
Exit Sub
End If
ProgressBar1.Max = xCnt
ProgressBar1.Min = 0
ProgressBar1.Value = 0
Label1.Caption = "0 / " & xCnt
For i = 0 To xCnt - 1
DoEvents
'下面的SQL插入語句自行更改,注意數據格式,如果是xRs("欄位名1")的值是文本,記得在兩邊加單引號。
Conn.Execute "insert into data values(" & xRs("列名1") & "," & xRs("列名2") & "," & xRs("列名3") & ...... & ")"
xRs.MoveNext
Label1.Caption = i + 1 & " / " & xCnt
ProgressBar1.Value = i + 1
Next
Rs.Close : xRs.Close
Conn.Close : xConn.Close
Set Rs = Nothing : Set xRs = Nothing
Set Conn = Nothing : Set xConn = Nothing
End Sub
❹ 用VB編寫一個導入EXCEL文件數據到SQL2000資料庫中的程序,怎麼編寫的
操作方法如下:
1、導入Excel數據,同時創建表:
select * into 表名 FROMopenrowset( 'Microsoft.Jet.OLEDB.4.0','EXCEL 8.0;HDR=YES;IMEX=1;DATABASE=文件路徑','select* from [Excel表名(默認為Sheet1)$]')。
2、在表中插入Excel數據:
insert into 表名 select * fromopenrowset( 'Microsoft.Jet.OLEDB.4.0','EXCEL 8.0;HDR=YES;IMEX=1; DATABASE=文件路徑','select * from [Excel表名(默認為Sheet1)$]')。
3、導出數據到Excel中:
insert into openrowset('Microsoft.Jet.OLEDB.4.0','EXCEL 8.0;HDR=YES;IMEX=0; DATABASE=文件路徑','select* from [Excel表名(默認為Sheet1)$]') select * from 表名;需要創建Excel文件並指定列名後才可以導出。
❺ 高分,怎樣用vb把excel表中的數據導入資料庫中
以access 為例: 打開資料庫, 找到【外部數據】 ,點擊【excel】圖標,選擇文件即可導入!
❻ 用VB做怎麼將Excel數據導入SQL資料庫中
用VB做,將Excel數據導入SQL資料庫中:
法一:可以試著用VB書寫一段調用SQL Server資料庫DTS的代碼,然後就可以像直接使用DTS進行數據導入一樣就行Excel與SQL Server數據之間的遷移了。
方法二:可以用VB來 作EXCEL,然後一條數據一條數據的 入到資料庫中,這種方法不 使用,因為VB 作EXCEL是非常慢的,如果數據量太大,很有可能會造成宕機。
❼ VB讀取excel數據並插入到資料庫
Set xlApp = CreateObject("Excel.Application") '激活EXCEL應用程序
xlApp.Visible = False '隱藏EXCEL應用程序窗口
Set xlBook = xlApp.Workbooks.Open(FileManually) '打開工作簿,FileManually為一個EXCEL報表文件
Set xlSheet = xlBook.Worksheets(Trim(txtSheetNM.Text)) '設定工作表
For IRowsCount = 1 To xlSheet.UsedRange.Cells.Rows.Count
If Trim(xlSheet.Cells(IRowsCount, 1)) = "" Then
Exit For
End If
'將xlSheet.Cells(IRowsCount,列號)的數據插入資料庫中
'轉換男女可以判斷xlSheet.Cells(IRowsCount,列號)="男",則=1,否則=0,然後再寫入資料庫
Next IRowsCount
❽ 在vb.net中如何把excel表導入到mysql資料庫中去
1.使用php
Excel Parser Pro軟體,但是這個軟體為收費軟體;
2.可將EXCEL表保存為CSV格式,然後通過phpmyadmin或者SQLyog導入,SQLyog導入的方法為:
·將EXCEL表另存為CSV形式;
·打開SQLyog,對要導入的表格右擊,點擊「導入」-「導入使用載入本地CSV數據」;
·在彈出的對話框中,點擊「改變..」,把選擇「填寫excel友好值」,點擊確定;
·在「從文件導入」中選擇要導入的CSV文件路徑,點擊「導入」即可導入數據到表上;
❾ vb語言將excel表中的數據導入到資料庫
要用兩個連接 一個連接excel 一個連access,把從excel查處的數據放到dataset里,循環dataset的記錄,用另一個連接插入到access中。
********************************************************************************************************************
抱歉,沒仔細看代碼,你可能需要確認一下執行到conn.Open 時,conn的狀態有打開,然後再執行到conn.Execute "select * into tmptable ....時確認一下ACESS中有生成tmptable 這個表,如果沒有,那麼再看看你傳進去的路徑是否正確,路徑上確實存在excel和access文件,確定SQL寫的空格字元什麼的。