AutoReply
Thành viên tiêu biểu
- Tham gia
- 18/2/16
- Bài viết
- 567
- Được thích
- 741
em cũng hổng biết sao dán cái anh đưa ở trên vào cửa sổ VBA thấy đỏ lòm à. hicỦa sao lại thế?
em cũng hổng biết sao dán cái anh đưa ở trên vào cửa sổ VBA thấy đỏ lòm à. hicỦa sao lại thế?
Chắc VBA đến ngày... . Vậy có thể do ghép chuỗi SQL thiếu ". Em dò lại đầu và cuối một chuỗi phải bao bởi ". Em kiểm tra lại code này:em cũng hổng biết sao dán cái anh đưa ở trên vào cửa sổ VBA thấy đỏ lòm à. hic
Set lrs = Cnn.Execute("SELECT Maso,Tenchitiet,soluong," & _
"IIF(soluong >360, 'A', IIF(soluong =360, 'B', 'C' )) " & _
"FROM [DATA$]")
Chắc VBA đến ngày... . Vậy có thể do ghép chuỗi SQL thiếu ". Em dò lại đầu và cuối một chuỗi phải bao bởi ". Em kiểm tra lại code này:
Mã:Set lrs = Cnn.Execute("SELECT Maso,Tenchitiet,soluong," & _ "IIF(soluong >360, 'A', IIF(soluong =360, 'B', 'C' )) " & _ "FROM [DATA$]")
Cám ơn anh rất nhiềuVới CSDL MySQL, SQL Server thì ok nhưng Excel, Access thì không được, mình chỉ khẳng định 90%.
em cũng hổng biết sao dán cái anh đưa ở trên vào cửa sổ VBA thấy đỏ lòm à. hic
Bạn đã cấu hình SQL Server cho phép kết nối hay chưa?Dạ em chào cả nhà,
Hiện tại em đang muốn làm cái insert VBA excel vào sqlserver 2008r2. em thử chạy trực tiếp trên máy cài sql thì ok. Nhưng sang máy khác thì lỗi
dbnetlib connectionopen (connect()). sql server does not exist or access denied
em thử nhiều cách mà vẫn chưa được mong các bác giúp đỡ.
dạ em làm hết theo cái nàyBạn đã cấu hình SQL Server cho phép kết nối hay chưa?
Anh ơi cho em hỏi. Sao bài 1 Em làm bị lỗi nó báo thế này vậy anh.Bài 1:
Nhằm mục đích luyện tập và nâng cao kiến thức về ADO tôi xin mở topic này. Topic này chỉ dành cho những người mới học, bắt đầu học ADO như tôi tham gia.
Tôi có 2 Workbooks (A.xls và B.xls chung 1 folder): Wb A.xls có 1 sheet là sheet data dùng để chứa dữ liệu, wb B.xls là wb rỗng, trong đó có sheet1.
Xin hỏi là dùng ADO từ WB A.xls để copy toàn bộ dữ liệu của sheet data sang WB B.xls với sheet chứa dữ liệu là data
Kiểm tra lại file B.xls coi có cột STT không nhéAnh ơi cho em hỏi. Sao bài 1 Em làm bị lỗi nó báo thế này vậy anh.
View attachment 187554
Cám ơn anh. Đọc qua giúp đỡ của anh và Microft em đã cơ bản hiểu được chỗ này. Đây là câu lệnh thêm vào bảng. Vì vậy trong Sheet1 của File B.xls phải có columns heading giống bảng bên này. Sau khi thêm tên cột em đã INSERT thành công. Cám ơn anh HLMT nhiều. Ai bị lỗi giống em có thể tham khảo thêm tại https://support.microsoft.com/EN-US/help/295646Kiểm tra lại file B.xls coi có cột STT không nhé
Bạn thử đổi câu lệnh truy vấn này xem saoở bài trên tôi code như vậy
kết quả ra tất cả đều đúng nhưng tổng số phiếu không hợp lýMã:Sub TEST() ' KHONG CO TIEU DE Dim Cn As Object Dim Rst As Object Dim i As Long Set Cn = CreateObject("ADODB.connection") Set Rst = CreateObject("ADODB.recordset") Sheet4.Range("a2:Z10000").Clear Cn.Provider = "Microsoft.ACE.OLEDB.12.0" Cn.Properties("Data Source") = ThisWorkbook.FullName Cn.Properties("Extended Properties") = "Excel 12.0;HDR=yes;IMEX=1" Cn.Open Rst.Open ("select MaKho, TenKho, count(SoPhieu), Sum(SoLuong) as So_Luong,Sum(SoLuong*gia) as SoTien from [data$] where Makho<>'' group by MaKho, TenKho"), Cn Sheet4.Range("a2").CopyFromRecordset Rst Rst.Close Cn.Close End Sub
Tôi muốn tổng số phiếu là đếm những phiếu riêng biệt chứ không phải trùng
ví dụ như mã TL0010 số phiếu lá 23 chứ không phải là 156 . Xin được giúp đỡ xin cảm ơn
Private Sub CommandButton1_Click()
Dim v As String, Cnn As Object, lrs As Object
Application.ScreenUpdating = False
Set Cnn = CreateObject("ADODB.Connection")
v = Application.Version
With Sheet3
.Range("A2:D5000").ClearContents
Cnn.Open ("Provider=Microsoft." & IIf(v <> "8.0", "ACE.OLEDB.12.0", "Jet.OLEDB.4.0") & _
";Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel " & IIf(v <> "8.0", "12.0", "8.0"))
'---------------------------------------------------------------------------------------------------------------
Set lrs = Cnn.Execute("SELECT STT, TEN, sum(SoLuong), GhiChu " & _
"FROM [Data$] " & _
" WHERE STT IN (SELECT STT FROM [" & ThisWorkbook.FullName & "].[DK$A1:A4]) " & _
"GROUP BY STT,TEN,GhiChu ")
'---------------------------------------------------------------------------------------------------------------
.Range("A2").CopyFromRecordset lrs
End With
'---------------------------------------------------------------------------------------------------------------
lrs.Close: Set lrs = Nothing
Cnn.Close: Set Cnn = Nothing
Application.ScreenUpdating = True
End Sub
Các anh chị cho dhn46 hỏi về lấy dữ liệu file csv:
dhn46 có file 1.csv tại D:\, có file để chứa kết quả Result.Xlsm cùng thư mục D:\
Tại sheet1 file Result, [A1:A10] chứa điều kiện cần lọc tương ứng với cột thứ 1 file 1.csv
Vậy xin hỏi code sử dụng SQL để lấy dữ liệu từ file D:\1.csv tới file D:\Result.xlsm với điều kiện tại D:\Result.xlsm_Sheet1.[A1:A10]
Xin cảm ơn GPE
Nhờ bạn đưa phương án giúp dhn46 nhé.Ủa cái này có vấn đề gì khó hả bạn ? mình thấy hình như bạn cũng đâu có yếu khoản SQL ta