Tìm thủ thuật nhanh hơn với chức năng tìm trong Blog

26/3/10

Kiểm tra kiểu dữ liệu của fields

Hỏi: tôi có một table có field MASO, tôi không rõ kiểu dữ liệu của Field. Muốn tự động kiểm tra xem Field đó có kiểu dữ liệu là gì (haquocquan)

Đáp:

Nhập function sau vào:

13/3/10

Tùy biến chọn file Excel để Import vào Acces

Chú ý, để sử dụng được các đối tượng có sẵn của Office, bạn phải khai báo sữ dụng thư viện Office bằng cách vào cửa sổ VBA, Menu Tool--> references, chọn Microsoft Office 11.0 library. (chọn 10.0 đối với AccessXP)


Và bây giờ bắt đầu:

Tạo 1 form tên là frmTest
Vẽ 1 Textbox tên là txtPath.
Vẽ 1 nút nhấn là cmdSelectfile
Vẽ 1 textBox đặt là txtRange để bạn nhập tên sheet muốn import vào
Vẽ 1 Textbox đặt tên là txtTable để bạn nhập tên Table muốn lưu
Vẽ 1 nút nhấn có tên cmdImport
Tạo 1 module copy đoạn code sau vào:

Function getFile(Tit As String, formatName As String, formatType As String)
Dim dlgOpen As FileDialog
Set dlgOpen = Application.FileDialog(msoFileDialogOpen)
With dlgOpen
.Title = Tit
.Filters.Clear
.Filters.Add formatName, formatType
.AllowMultiSelect = False
result = .Show
If (result <> 0) Then
getFile = Trim(dlgOpen.SelectedItems.Item(1))
End If
End With

End Function

Và lưu thành tên Module 1
Trong event Onclick của nút cmdSelectfile, ta nhập như sau:

Private Sub cmdSelectfile_Click()
Me![txtPath] = getFile("c:\", "Select the Excel File", "*.xls")
End Sub

Trong event Click của nút cmdImport, ta nhập như sau:
Private Sub cmdImport_Click()

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, txtTenTable, txtPath, True, txtRange
MsgBox "import thanh cong"
End Sub

Giờ sử dụng: đầu tiên ta click vào nút cmdSelectfile để chọn file Excel muốn import
Nhập tên Sheet muốn import vào txtRange (ví dụ: Sheet1:A1:H300)
Nhập tên table muốn lưu. (Ví dụ: Table1)
Và nhấn Nút Import
Rồi hưởng thành quả

DownloadDemo

____________________________________________________________________________________
Thảo luận thêm: http://thuthuataccess.co.cc/forum

3/3/10

Hàm kiểm tra 1 chuỗi có phải là số không

Hỏi: (HQQ) Tôi có table (MASO(text), HOTEN): do trước đây khi nhập MASO không có quy định, nên khi nhập mã số nhân viên vận hành có thể nhập thế nào cũng được (ví dụ: 1234, HAO12,...)
Nay, nhập MASO chỉ nhập bằng số (vẫn kiểu text) và cần phải thay đổi mã số của các khách hàng cũ. Làm thế nào lọc ra được các dữ liệu đã có mã nhập toàn bằng số và những dữ liệu có mã nhập không hoàn toàn bằng số.

Đáp: Bạn dùng hàm IsNumeric([Chuỗi]) để kiểm tra chuỗi đó có phải là 1 số không.
Ví Dụ: IsNumeric("123456") =>Kết quả True/Yes
IsNumeric("KH0123")=> Kết quả : False/No

Như vậy bạn hoàn toàn có thể lọc ra những giá trị cần thay thế
____________________________________________________________________________________
Thảo luận thêm: http://thuthuataccess.com/forum