Khiếp bác cứ đổi CSDL như thế này ai mà sửa Code cho kịpUpdate File hoàn chỉnh, chưa căn chỉnh được tiêu đề hạng mục công việc và tiêu đề VẬT LIỆU , NHÂN CÔNG, MÁY THI CÔNG
Khiếp bác cứ đổi CSDL như thế này ai mà sửa Code cho kịp.
Em chưa biết cái này thầy ạDùng Power Query thì bớt phải sửa code.
Private Sub cmdNhapLieu_Click()
Dim ApMH As Range
Dim x As Integer
Set ApMH = Sheet1.Cells(Rows.Count, 2).End(xlUp).Offset(1, 0) ' Chon o bat dau dien du lieu
For x = 0 To Me.LBox_DATAtenCV.ListCount - 1 ' LBox_DATAtenCV la ten cua list box ma chung ta chon trong form
' Cho x chay tu dong so 0 den dong so cuoi cung cua ListBox -1 (tuc la cho i chay tu dong dau den dong cuoi List Box)
If Me.LBox_DATAtenCV.Selected(x) Then ' Neu lua chon dong thu x+1 thi
ApMH = Me.LBox_DATAtenCV.List(x) ' Gan ApMh la vung du lieu cua dong thu x+1
ApMH.Offset(0, 0) = Me.LBox_DATAtenCV.List(x, 1) ' Gan ApMh dong 1 cot 1 là vung du lieu LIST BOX dong x+1 cot 1
ApMH.Offset(0, 1) = Me.LBox_DATAtenCV.List(x, 2) ' Gan ApMh dong 1 cot 2 là vung du lieu LIST BOX dong x+1 cot 2
ApMH.Offset(0, 2) = Me.LBox_DATAtenCV.List(x, 3) ' Gan ApMh dong 1 cot 3 là vung du lieu LIST BOX dong x+1 cot 3
Set ApMH = ApMH.Offset(1, 0) ' Cho ApMh di chuyen xuong 1 dong
End If
Next x
For x = 0 To Me.LBox_DATAtenCV.ListCount - 1
If Me.LBox_DATAtenCV.Selected(x) Then Me.LBox_DATAtenCV.Selected(x) = False
Next x
Unload formTraMH
End Sub
Em chưa biết cái này thầy ạ
Cám ơn Thầy đã chỉ bảo. Để em tìm tài liệu xem thử. Có gì mong Thầy giúp đỡ ạ ./Thời buổi công nghệ thay đổi hằng ngày. Nhu cầu truy vấn dữ liệu cũng tăng theo.
Khi thấy nhu cầu tăng trên khả năng cổ điển của Excel thì quý vị bù đắp bằng cách code VBA, hoặc dùng những công thức mảng hết sức phức tạp.
Thực ra, hầu hết những cái rắc rối này Microsoft đã có cải tiến qua các phiên bản mới. Phiên bản 2016 và trên nữa là 365 có những tiện nghi truy vấn và phân tích dữ liệu lớn, dữ liệu trên mạng, dư liệu các CSDL khác. Đó là PowerQuery và PowerPivot.
Nếu tôi là bạn thì tôi bớt chút thì giờ đùa với VBA, học cách sử dụng 2 cái trên có lợi cho khả năng Excel (*) hơn.
(*) Tôi cẩn thận dùng hoạt cảnh Excel để phan biệt rõ là theo quan điểm của tôi khả năng Excel khác với khả năng lập trình (VBA), hay khả năng tạo công thức phức tạp.
Anh gì ấy ở Đắk Lắc ơi. Anh chỉ đọc Code thất hoàng mang. Chứ như bọn em nhìn vào CSDL của anh cứ thấy đổi như vậy thì người giúp thì có đau đầu không anh ?Hic không hiểu sao càng ngày bị cuồng VBA rồi, nghĩ mãi không ra hướng giải quyết, mà cứ mò vào diễn đàn đăng bài hỏi xong và được mọi người gợi ý lại mò ra cách làm mới lạ chứ.
Có cao thủ nào check dùm em xem có bị lỗi gì không với. Mình đã làm xong phần worksheet_change, và form nhập dữ liệu đầu vào.
Nhờ mọi người hướng dẫn dùm cách nào link tự động từng mã hiệu công việc ở cột B của sheet XuatDL từ sheet KHỐI LƯỢNG sang. Chứ không lẽ cứ ngồi nhập tay từng cái mã hiệu cho nó nhày ra dữ liệu thì thấy thủ công quá
Mình xin lỗi bạn nha, vì mình thấy sai sót nên chỉnh lại đó thôi.Anh gì ấy ở Đắk Lắc ơi. Anh chỉ đọc Code thất hoàng mang. Chứ như bọn em nhìn vào CSDL của anh cứ thấy đổi như vậy thì người giúp thì có đau đầu không anh ?
Ngày xưa em cũng tập làm file dự toán(Để nghiên cứu về VBA). Nhưng về sau thấy nản quá vì có nhiều vấn đề... Nếu anh muốn theo đuổi vấn đề này thì anh phải bố trí CSDL chuẩn rồi mới tiếp tục đươc.Mình xin lỗi bạn nha, vì mình thấy sai sót nên chỉnh lại đó thôi.
Nhờ những góp ý của bạn mà mình đã làm được gần như toàn bộ cái mà mình mong muốn rồi.
Giúp mình vấn đề này với. Mình đã tạo được Form rồi nhưng mà không biết tạo Text Box tìm kiếm cho nhanh. Có cách nào giúp mình không? Hoặc là gợi mở cho 1 mình chỗ để nghiên cứu cũng được.
Mình đã viết được ok rồi bạn, cơ bản là giờ chạy ra số liệu vô tư rồi, còn thiếu cái tìm kiếm này và copy dữ liệu từ File Excel này sang Excel khác thôi. Mình sẽ gửi bạn xem thử sớm nhất có thể.Ngày xưa em cũng tập làm file dự toán(Để nghiên cứu về VBA). Nhưng về sau thấy nản quá vì có nhiều vấn đề... Nếu anh muốn theo đuổi vấn đề này thì anh phải bố trí CSDL chuẩn rồi mới tiếp tục đươc.
Dim start_R As Long
Dim lrDATA As Long
start_R = 7
lrDATA = Sheet5.Range("D" & Rows.Count).End(xlUp).Row '
Sheet5.Range("A" & start_R & ":E " & lrDATA).Select
"thừa cách"
Mình đã viết được ok rồi bạn, cơ bản là giờ chạy ra số liệu vô tư rồi, còn thiếu cái tìm kiếm này và copy dữ liệu từ File Excel này sang Excel khác thôi. Mình sẽ gửi bạn xem thử sớm nhất có thể.
Bây giờ thì giúp mình chỗ này với?
Mã:Sheet5.Range("A" & start_R & ":E " & lrDATA).Select
Vậy mà sao VBA lại báo lỗi mới lạ chứ ? Nó báo lỗi này ""Method 'Range' of Object '_Worksheet' Failed"
Viết vầy thì chạy vô tư
Sheet5.Range("G" & 7 & ":G" & 79).Select