Không thực hiện được phép cộng trừ khi chạy code VBA (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

phuocrobe

Thành viên hoạt động
Tham gia
2/11/16
Bài viết
131
Được thích
0
Mình muốn sử dụng code trong VBA để thực hiện phép cộng trừ nhiều ô nhưng khi chạy code thì 1 số ô không có dữ liệu thì không thể thực hiện được phép cộng trừ. Nếu tất cả các ô đều có số liệu thì nó mới chạy được.
Mình muốn hỏi làm sao để có thể thực hiện được phép cộng trừ dù cho có 1 số ô không có số liệu.
Bởi vì số liệu này luôn biến động và bảng tính có rất nhiều ô dữ liệu nên không phải tất cả ô nào cũng đều có số liệu.
 

File đính kèm

Lần chỉnh sửa cuối:
Mình phát hiện ra rồi bạn à. Không hiểu sao ở cột BY (f77) nếu từ BY10:BY17 = Điểm a (hoặc b hoặc c) thì dữ liệu nó mới cập nhật qua cột H đến cột J ở file 06. +-+-+-+
PHP:
Sub LayDL()
Dim cn As Object, tochuc As String, canhan As String, nsnn As String, strsql As String
Dim diem_a As String, diem_b As String, diem_c As String, sop As String

Range("A15").Resize(65000, 12).ClearContents

diem_a = ChrW(273) & "i" & ChrW(7875) & "m a"
diem_b = ChrW(273) & "i" & ChrW(7875) & "m b"
diem_c = ChrW(273) & "i" & ChrW(7875) & "m c"
nsnn = "NSNN"
canhan = "Cá nhân"
tochuc = "T" & ChrW(7893) & " ch" & ChrW(7913) & "c"

strsql = "SELECT f2,f3 " _
            & ",f10 & '-'& f11" _
            & ",f12 & '-'& f13" _
            & ",IIF(f14>0 or f15>0 or f19>0,'" & nsnn & "',IIF(f20>0,'" & tochuc & "',IIF(f21>0,'" & canhan & "',null)))" _
            & ",IIF(LCASE(f77)= '" & diem_a & "',f88, null)" _
            & ",IIF(LCASE(f77)= '" & diem_b & "',f88,null)" _
            & ",IIF(LCASE(f77)= '" & diem_c & "',f88,null)" _
            & ",f78,f79" _
            & " FROM [THA$A10:EU60000]" _
            & " WHERE f106 =1"
sop = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & ThisWorkbook.Path _
        & "\TongHop.xls;Extended Properties=""Excel 8.0;HDR=NO;IMEX=1"";"
        
Set cn = CreateObject("ADODB.Connection")
cn.Open sop
            
With Range("C15")
    .CopyFromRecordset cn.Execute(strsql)
    Set cn = Nothing
    With Range([A15], .Offset(65500).End(xlUp).Offset(, -2))
        If .Row > 14 Then
            .Formula = "=row()-14"
            .Value = .Value
        End If
    End With
End With
    
End Sub
[/QUOTE]
 
Upvote 0
Mình phát hiện ra rồi bạn à. Không hiểu sao ở cột BY (f77) nếu từ BY10:BY17 = Điểm a (hoặc b hoặc c) thì dữ liệu nó mới cập nhật qua cột H đến cột J ở file 06. +-+-+-+

thì xem lại kỹ đi, có thể cột f106 không bằng 1 ở các vị trí đó, hoặc bạn nhập sai chữ Điểm a / b /c (chú ý phải chuẩn hóa không có dấu cách ở đầu và cuối ) nhưng không cần phân biệt chữ hoa chữ thường ví dụ "điểm A" có thể chấp nhận...
 
Lần chỉnh sửa cuối:
Upvote 0
Có đầy đủ hết bạn à. Trước đây mình cũng từng gặp vài trường hợp như thế này rồi dù điều kiện đúng nhưng nó vẫn không chạy.
thì xem lại kỹ đi, có thể cột f106 không bằng 1 ở các vị trí đó, hoặc bạn nhập sai chữ Điểm a / b /c (chú ý phải chuẩn hóa không có dấu cách ở đầu và cuối ) nhưng không cần phân biệt chữ hoa chữ thường ví dụ "điểm A" có thể chấp nhận...
 
Upvote 0
Giờ thì chuẩn rồi bạn ơi. Quá tuyệt vời luôn à. Cám ơn bạn rất nhiều nha. Chúc bạn vui vẻ và may mắn nha. )(&&@@
thì xem lại kỹ đi, có thể cột f106 không bằng 1 ở các vị trí đó, hoặc bạn nhập sai chữ Điểm a / b /c (chú ý phải chuẩn hóa không có dấu cách ở đầu và cuối ) nhưng không cần phân biệt chữ hoa chữ thường ví dụ "điểm A" có thể chấp nhận...
 
Upvote 0
Mình cũng không hiểu lý do chính xác là sao. Nhưng theo kinh nghiệm bị kiểu này nhiều lần mình tắt máy sau đó khởi động lại, sau đó copy sang file khác thì nó mới được. --=0

thế thfi lấy tay đập lên đầu 3 cái , có khi ra vấn đề, còn vẫn không ra thì lấy búa đập vào lap/pc 3 cái sẽ khỏi,
hihihi
chắc do lý do của chính con người thôi.
Vẫn không ra thì
 
Upvote 0
Giờ thì ôk rồi bạn à, vấn đề này cứ khởi động lại máy lại là được à &&&%$R
thế thfi lấy tay đập lên đầu 3 cái , có khi ra vấn đề, còn vẫn không ra thì lấy búa đập vào lap/pc 3 cái sẽ khỏi,
hihihi
chắc do lý do của chính con người thôi.
Vẫn không ra thì
 
Upvote 0
Phải nhờ bạn 1 lần nữa vậy.
Mình có 1 file gồm 19 sheet, và mình muốn tạo 1 file TongHop.xls làm sao để có thể tự động cộng tất cả các ô mà mình có tô màu nền ở 19 sheet của nhiều file vào chung 1 file TongHop.xls có được không vậy bạn?
Giúp mình với nhé. Cám ơn bạn rất nhiều nha ! )(&&@@

thế thfi lấy tay đập lên đầu 3 cái , có khi ra vấn đề, còn vẫn không ra thì lấy búa đập vào lap/pc 3 cái sẽ khỏi,
hihihi
chắc do lý do của chính con người thôi.
Vẫn không ra thì
 
Lần chỉnh sửa cuối:
Upvote 0
Phải nhờ bạn 1 lần nữa vậy.
Mình có 1 file gồm 19 sheet, và mình muốn tạo 1 file TongHop.xls làm sao để có thể tự động cộng tất cả các ô mà mình có tô màu nền ở 19 sheet của nhiều file vào chung 1 file TongHop.xls có được không vậy bạn?
Giúp mình với nhé. Cám ơn bạn rất nhiều nha ! )(&&@@

Làm thì làm được, nhưng

+ chỉ tô màu nền thì không làm được (có thể làm nhưng phức tạp vấn đề, các ô nào tô màu, và tô theo điều kiện nào, nếu biết điều kiện thì không cần tô màu?)

+ bạn chuyên xóa tiêu đề ở tất cả các file, làm cho số liệu các file tối nghĩa - vì dữ liệu phải gắn với tên, số chỉ là vô nghĩa (nếu muốn bí mật hoàn toàn thì nên tự làm hoặc thuê riêng ai đó làm cho - yêu cầu họ giữ bí mật có tiền)

+ cần giải thích rõ muốn gì, kết quả ra sao (cái này chắc liên quan tiêu đề cột dữ liệu)

+ cuối, chắc là làm được sau khi bổ sung các điều trên - Nhưng phải mở topic mới (vì vấn đề mới khác xa topic này rồi), chi tiết câu hỏi, bổ sung tiêu đề cột (không nên xóa); và không nên hỏi riêng ai - các thành viên khác còn giúp.
 
Lần chỉnh sửa cuối:
Upvote 0
Mình là thành viên mới nên cũng không rõ lắm, cám ơn bạn đã góp ý nhé. Chúc bạn luôn vui vẻ và thành công nhé @$@!^%
Làm thì làm được, nhưng

+ chỉ tô màu nền thì không làm được (có thể làm nhưng phức tạp vấn đề, các ô nào tô màu, và tô theo điều kiện nào, nếu biết điều kiện thì không cần tô màu?)

+ bạn chuyên xóa tiêu đề ở tất cả các file, làm cho số liệu các file tối nghĩa - vì dữ liệu phải gắn với tên, số chỉ là vô nghĩa (nếu muốn bí mật hoàn toàn thì nên tự làm hoặc thuê riêng ai đó làm cho - yêu cầu họ giữ bí mật có tiền)

+ cần giải thích rõ muốn gì, kết quả ra sao (cái này chắc liên quan tiêu đề cột dữ liệu)

+ cuối, chắc là làm được sau khi bổ sung các điều trên - Nhưng phải mở topic mới (vì vấn đề mới khác xa topic này rồi), chi tiết câu hỏi, bổ sung tiêu đề cột (không nên xóa); và không nên hỏi riêng ai - các thành viên khác còn giúp.
 
Upvote 0
Vì các ô này là cố định tại mỗi file và các file này đều giống nhau nên mình nghĩ k cần tiêu đề, chỉ cần lấy vị trí các ô tại mỗi sheet là cộng lại với nhau thôi à
Mình là thành viên mới nên cũng không rõ lắm, cám ơn bạn đã góp ý nhé. Chúc bạn luôn vui vẻ và thành công nhé @$@!^%
 
Upvote 0
Vì các ô này là cố định tại mỗi file và các file này đều giống nhau nên mình nghĩ k cần tiêu đề, chỉ cần lấy vị trí các ô tại mỗi sheet là cộng lại với nhau thôi à

Mở topic mới đi
, thế thì bạn bịa cái tên nào đó, xóa đi trông file đã không muốn giúp rui vì nó như tớ giấy nháp xóa trắng vửt đi, ai muốn giúp
 
Upvote 0
Upvote 0

Vẫn như trên, đợi các thành viên cùng giúp nhé,
Tôi thì không thích đọc số liệu vô nghĩa, làm được cũng không thích.

+ bạn chuyên xóa tiêu đề ở tất cả các file, làm cho số liệu các file tối nghĩa - vì dữ liệu phải gắn với tên, số chỉ là vô nghĩa (nếu muốn bí mật hoàn toàn thì nên tự làm hoặc thuê riêng ai đó làm cho - yêu cầu họ giữ bí mật có tiền)

+ cần giải thích rõ muốn gì, kết quả ra sao (cái này chắc liên quan tiêu đề cột dữ liệu)
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom