Hỏi về kết nối CSDL Access với Visual Basic, và cách đọc file excel rồi xuất báo cáo trong Visual Basic

Chào cả nhà. Mình bây giờ mới tập toẹ về lập trình VB cho mình hỏi chút nhé.
Mình lập trình bằng VB6 thì có thể liên kết với Access 2003 được không. và mình muốn xuất báo cáo sang dạng file word và excel thì làm thế nào?
2 việc này thực sự rất quan trọng với mình Các bạn giúp mình với!
 |  Xem: 34.255  |  Trả lời: 6
Ngày gửi: 04/04/2008 - 16:19  |  Câu hỏi liên quan
Trả lời

Danh sách trả lời (6)

Làm như sau nè:
b1: Tạo cơ sở dữ liệu trong access
b2: Control Panel/Administrative Tools/Data Sources (ODBC)/chọn access sau đó chọn select tới mục mà bạn lưu dữ liệu
ban chon trong VB them DBG thì phải sau đó kết nối dữ liệu

Cách 2

Module
Global gCnn As New ADODB.Connection
Global Rs As New ADODB.Recordset
form này
Private Sub cmdAccess_Click()
On Error GoTo errp
If gCnn.State = adStateOpen Then gCnn.Close
gCnn.Provider = "Microsoft.JET.OLEDB.4.0"
gCnn.CursorLocation = adUseClient
gCnn.Open txtDbase.Text, txtuser.Text, txtPwd.Text
' hoặc là gcnn.open " đường dẫn "
MsgBox " Access the Database successful !", vbInformation + vbOKOnly, "Access"
Unload Me
Exit Sub
errp:
MsgBox Err.Description
End Sub
Ngày gửi: 04/04/2008 - 16:41
Cái này là bạn dùng Vb 6 hay VB.NET vậy. Cách trên tớ nghĩ bạn gold nói đúng rồi cách thứ 2 khá hay Còn về in ra word thì
Nếu dùng VB.NET thì bạn có thể dùng thư viện Microsoft Word object Library 11.0 ( Add reference ->Com), còn nếu dùng vb 6 thì cũng có một thư viện như vậy nhưng mình không nhớ tên.
Bạn ghi trực tiếp ra file và định dạng đoạn text xuất ra qua đối tượng Document.
Các giao tiếp của thư viện này bạn có thể kiếm trên các bộ tìm kiếm.
Ngày gửi: 04/04/2008 - 16:51
* Đầu tiên bạn phải có 1 CSDL Access với tên là QuanLyGiDo.mdb(đặt tên tùy ý).
* Vào VB 6.0 tạo 1 Project mới, thiết kế 1 Form với đầy đủ các Control mà bạn cần.
* Vào menu Project chọn References, đánh dấu check vào Microsoft ActiveX Data Objects 2.8 Library rùi chọn OK.
* Trên thanh Standard chọn nút thứ 2 từ trái sang, click vào tam giác nhỏ quay xuống màu đen chọn Module. Bắt đầu viết code kết nối CSDL, như sau:
'Khai báo biến
Option Explicit
Public cn As New ADODB.Connection 'ngay chổ này, nếu bạn không vào Project --> References chọn Microsoft ActiveX Data Objects 2.8 Library thì chấm (.) nó sẽ không ra Connection đâu.

Sub Connect()
If cn.State = adStateClosed Then
cn.Provider = "Microsoft.jet.OLEDB.4.0"
cn.ConnectionString = App.Path & "\QuanLyGiDo.mdb"
cn.Open
End If
End Sub 'Kết thúc module Connect
* Quay lại Form thiết kế gọi thủ tục Connect, như sau:
Private Sub Form_Load()
Call Module1.Connect
.....
End Sub
===> Thế là xong dữ liệu đã được kết nối. Để hiễn thị dữ liệu trên Form thì bạn phải khai báo các RecordSet cần thiết theo yêu cầu Form của bạn nữa, ...

Còn về kết nối bạn có thể thử dùng Merge Field từ MS Word, cũng tốt lắm đó . Làm cái form xong xuôi rồi mới select cái database (tức là cái Excel file mình muốn report). Mày mò chút thì ra. Mình không biết Excel file của bạn format nó như thế nào nên khó chỉ. Nhưng nếu biết dùng Merge Fields của Word rồi thì làm được ngay.

Chúc bạn thành công !
Ngày gửi: 04/04/2008 - 17:01
tao modul ket noi voi access
khai bao va thiet dat mot voi co so du lieu minh da tao. neu muon biet cu the ban hay tim phan co tu hoc vb tg 21 ngay. su dung ado.
Ngày gửi: 11/04/2009 - 07:57
bac nao co the giup minh khong minh dang lam de tai ma khong biet cach lap trinh nhu sao

1, 2, 3 co the truy xuat danh sach file word ra.16
tu 16 co the truy xuat file word ra khung 8 file word nam trong databate co sang va datbate co the duoc up date thuong xuyên
toi can gap lambac nao biet giup toi voii
mail cua toi
phantandat3000@yahoo.com
phantandat3000@gmail.com
phone 0909072804
069637800 dat
Ngày gửi: 21/08/2009 - 19:28
Trích dẫn:
Từ bài viết của vietnam
* Đầu tiên bạn phải có 1 CSDL Access với tên là QuanLyGiDo.mdb(đặt tên tùy ý).
* Vào VB 6.0 tạo 1 Project mới, thiết kế 1 Form với đầy đủ các Control mà bạn cần.
* Vào menu Project chọn References, đánh dấu check vào Microsoft ActiveX Data Objects 2.8 Library rùi chọn OK.
* Trên thanh Standard chọn nút thứ 2 từ trái sang, click vào tam giác nhỏ quay xuống màu đen chọn Module. Bắt đầu viết code kết nối CSDL, như sau:
'Khai báo biến
Option Explicit
Public cn As New ADODB.Connection 'ngay chổ này, nếu bạn không vào Project --> References chọn Microsoft ActiveX Data Objects 2.8 Library thì chấm (.) nó sẽ không ra Connection đâu.

Sub Connect()
If cn.State = adStateClosed Then
cn.Provider = "Microsoft.jet.OLEDB.4.0"
cn.ConnectionString = App.Path & "QuanLyGiDo.mdb"
cn.Open
End If
End Sub 'Kết thúc module Connect
* Quay lại Form thiết kế gọi thủ tục Connect, như sau:
Private Sub Form_Load()
Call Module1.Connect
.....
End Sub
===> Thế là xong dữ liệu đã được kết nối. Để hiễn thị dữ liệu trên Form thì bạn phải khai báo các RecordSet cần thiết theo yêu cầu Form của bạn nữa, ...

Còn về kết nối bạn có thể thử dùng Merge Field từ MS Word, cũng tốt lắm đó . Làm cái form xong xuôi rồi mới select cái database (tức là cái Excel file mình muốn report). Mày mò chút thì ra. Mình không biết Excel file của bạn format nó như thế nào nên khó chỉ. Nhưng nếu biết dùng Merge Fields của Word rồi thì làm được ngay.

Chúc bạn thành công !
bay jo ban co them hinh` anh? huong dan thi tot hon chu noi the nay thi hoi kho hieu?
Ngày gửi: 23/03/2010 - 19:42
Trả lời