Bổ sung dữ liệu thiếu trong excel???

  • Thread starter Thread starter minhbeo
  • Ngày gửi Ngày gửi
Liên hệ QC

minhbeo

Thành viên mới
Tham gia
10/1/08
Bài viết
22
Được thích
0
Tình huống em đang gặp phải là phải bổ sung thông tin bị thiếu của hàng
nghìn sản phẩm và mỗi một sản phẩm lại có một mã khác nhau nên nếu dùng theo cách thủ công hiện em đang làm là chọn auto filter rồi copy & paste thì mất thời gian quá !------> Mong các anh chị giúp đỡ xem giùm em file đính kèm và cho em biết có cách nào khác nhanh hơn không nhé! Thanks.
 

File đính kèm

Đầu tiên bạn đặt name cho danh sách đầy đũ... ví dụ trong file của bạn, tôi đặt:
Mã:
DS =$G$3:$I$16
Tại cell C3 và D3 gõ công thức:
Mã:
C3 =VLOOKUP($B3,DS,2,0)
D3 =VLOOKUP($B3,DS,3,0)
Kéo fill 2 công thức này xuống dưới... Sau khi kiểm tra, nếu thấy kết quả chính xác thì bạn lại copy 2 cột C, D này, PasteSpecial\Value vào chính nó.. Vậy là xong!
ANH TUẤN
 
anhtuan1066 đã viết:
Đầu tiên bạn đặt name cho danh sách đầy đũ... ví dụ trong file của bạn, tôi đặt:
Mã:
DS =$G$3:$I$16
Tại cell C3 và D3 gõ công thức:
Mã:
C3 =VLOOKUP($B3,DS,2,0)
D3 =VLOOKUP($B3,DS,3,0)
Kéo fill 2 công thức này xuống dưới... Sau khi kiểm tra, nếu thấy kết quả chính xác thì bạn lại copy 2 cột C, D này, PasteSpecial\Value vào chính nó.. Vậy là xong!
ANH TUẤN



Cám ơn bác Tuấn đã chỉ cho em phương pháp nhưng thực tế thì em không có bảng dữ liệu đầy đủ mà chỉ có bảng dữ liệu thiếu với hàng trăm ngàn dòng ( em dang dùng excel 2007 ) với hàng ngàn sản phẩm và bị thiếu thông tin ở cột C&D, còn bảng dữ liệu đầy đủ em có được là do lược bớt mới có được. Do vầy bác có cách nào khác chỉ giùm em nhé & cho em hỏi thêm cách bác đạt tên đanh sách đầy đủ trong file em gửi = code : DS =$G$3:$I$16 ( do công thức này em chưa làm bao giờ )

Cám ơn bác nhiều!
 
em có trường hợp này nữa,khi em làm Macro --> recorder new macro,sau khi thực hiện các thao tác xong lưu lại thì khi khởi động lại macro nó báo lỗi (thiếu 2 hàng khai báo giới hạn trên đầu trang chứa mã) nên không chạy dc,pác tư vấn dùm nhé,em xài 2003
 
1> Cách đặt name: Quét chọn vùng $G$3:$I$16, vào menu Insert\Name\Define và gõ vào tên cần đặt, ở đây tôi gõ chử DS
2> Lấy bảng dử liệu đầy đủ: Bạn quét chọn nguyên vùng dử liệu thực tế (tức là vùng dử liệu đang bị thiếu ấy), vào menu Data\ Filter\ Advanced Filter, chọn 2 mục "Copy to anather location" và "Unique record only" ... Mục "Copy to" bạn gõ vào địa chỉ cell mà bạn cần copy tới, OK là bạn đã có dc 1 danh sách duy nhất, giờ bạn hảy Filter danh sách này, loại bỏ các dòng Blank là xem như đây chính là dử liệu đầy đủ rồi...
Cuối cùng là đặt name cho danh sách này như tôi nói ở trên.. áp dụng công thức và.. ra...
Chúc thành công
ANH TUẤN
 
Phải bổ sung thông tin bị thiếu của hàng
nghìn sản phẩm. Mong giúp đỡ cho em biết có cách nào khác nhanh hơn không nhé! Thanks.
Cho chạy macro này sẽ ít động tay vô dữ liệu & nhanh hơn:
PHP:
Option Explicit

Sub Update()
 Dim lRow As Long, lJ As Long
 Dim tSF As String, nSX As String, Ploai As String
1 ' Xep Du Lieu:     *    *          *    *          *    *'
 lRow = Range("B65432").End(xlUp).Row
 Range("B2:D" & lRow).Select
 Selection.Sort Key1:=Range("B3"), Order1:=xlAscending, Key2:=Range("C3") _
    , Order2:=xlDescending, Key3:=Range("D3"), Order3:=xlDescending, Header _
    :=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
    DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
    xlSortNormal
2 ' Dien Day Du Lieu Cac Truong:     *    *          *    *          *    *'
 For lJ = 2 To lRow
    With Cells(lJ, 2)
        If .Value <> tSF And .Offset(, 1) <> "" And .Offset(, 2) <> "" Then
            tSF = .Value:       nSX = .Offset(, 1)
            Ploai = .Offset(, 2)
        ElseIf .Value = tSF Then
            If .Offset(, 1) = "" Then .Offset(, 1) = nSX
            If .Offset(, 2) = "" Then .Offset(, 2) = Ploai
        End If
    
    End With
 Next lJ
End Sub
 
Cám ơn bác Tuấn nhiều nhiều, giải pháp của bác hay quá.
 
Ôi! Giải pháp của bác SA_DQ hay thiệt, em copy va run macro của bác ra được ngay kết quả như ý muốn.

Để có thể làm được như bác, bác chỉ giùm em phương pháp học để sau này em có thể tự viết được Macro với!!!

Cám ơn bác nhiều nhiều.
 
Bạn có thể tự làm lấy 1 macro để thực hiện công việc tự động bằng cách record macro quá trình mà tôi đã trình bày ở trên... tuy code ko hay bằng của anh SA, nhưng ít ra bạn hiểu dc.. và quan trọng là tự mình làm lấy.. có phải là thích hơn ko?
ANH TUẤN
 
Em đang gặp trục trặc với hàm " VLOOKUP "

Bác Anh Tuấn xem giùm em với, em dùng hàm vlookup như để bổ sung dữ liệu thiếu nhưng không thấy công thức chạy. Các bác xem giùm file đính kèm và chỉ cho em nguyên nhân với nhé!

Thanks
 

File đính kèm

Hàm VLOOKUP ko chạy là tại vì cell đang dc format TEXT, nghĩa là bạn gõ sao nó ra vậy, dù là gõ công thức đi chăng nữa...
Khắc phục: Chọn toàn bộ các cell, vào menu Format\Cells, trong tab Number bạn chọn General ... Tiếp theo là gõ lại công thức sẽ ra ngay kết quã như ý muốn...
Đây là 1 kinh nghiệm quá giá, bạn lưu ý nhé!
Chúc thành công!
ANH TUẤN
 
Cám ơn bác Tuấn nhiều nhiều!!!

Em chào bác!!

Em đã làm theo cách bác chỉ và đã khắc phục được rùi!!

Em cám ơn bác nhiều nhiều!
 
Có một nút thanks dưới các bài đó nếu bạn muốn cám ơn lên clik vào đó. viết cám ơn sẽ bị coi là spam đó.
 
Web KT

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

Back
Top Bottom