Cách nhập dữ liệu vào nhiều sheet (1 người xem)

Liên hệ QC

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

huynhdungnt

Thành viên mới
Tham gia
26/5/11
Bài viết
3
Được thích
0
Xin chào các anh, chị. em là thành viên mới, em đang bí một vấn đề nhờ mọi người giúp đỡ em vấn đề này
Em có một danh sách học sinh, em muốn lấy tự động danh sách học sinh nữ ra một sheet khác (Nữ) dùng để nhập điểm. Em đã dùng hàm vookup nhưng nếu em xóa tên một học sinh trong sheet danh sách thì trong sheet "Nữ" danh sách học sinh nữ sẽ tự động điều chỉnh theo như thế sẽ làm cho danh sách bảng điểm bị lệch.
Mong mọi người giúp đỡ.
 

File đính kèm

Bạn dặt Name cho công thức gọn rồi dùng hàm if kết hợp

=VLOOKUP($C6,IF($E6="Nu",Nu,Nam),4,0)
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Loc danh sach

Mình làm thế này không biết đã đúng ý bạn cần chưa. Theo cách này thì bạn có thể nhập bất cứ tên hay thay đổi như thế nào đều không sai số liệu.
 

File đính kèm

Upvote 0
Cảm ơn mọi người đã góp ý. em cũng đã làm như ý các anh chị rồi nhưng ngay trên sheet Nu và Nam em nhập dữ liệu bằng tay chứ không lấy dữ liệu từ sheet Danh sach như ý thaohip .Trong sheet Danh sach chỉ lưu hồ sơ thôi không nhập điểm vào.
 
Upvote 0
Cảm ơn mọi người đã góp ý. em cũng đã làm như ý các anh chị rồi nhưng ngay trên sheet Nu và Nam em nhập dữ liệu bằng tay chứ không lấy dữ liệu từ sheet Danh sach như ý thaohip .Trong sheet Danh sach chỉ lưu hồ sơ thôi không nhập điểm vào.
Yêu cầu của bạn có mâu thuẫn, chắc ko thực hiện được bằng hàm đâu, họa chăng phải dùng VBA thôi!
- Tên trong Sheet Nữ được lấy ở Sheet Danh sách
- Điểm được nhập theo Tên ở Sheet Nữ
Vậy khi thay đổi tên ở Sheet danh sách thì làm sao điểm ở Sheet nữ có thể thay đổi theo được?
 
Upvote 0
Xin chào các anh, chị. em là thành viên mới, em đang bí một vấn đề nhờ mọi người giúp đỡ em vấn đề này
Em có một danh sách học sinh, em muốn lấy tự động danh sách học sinh nữ ra một sheet khác (Nữ) dùng để nhập điểm. Em đã dùng hàm vookup nhưng nếu em xóa tên một học sinh trong sheet danh sách thì trong sheet "Nữ" danh sách học sinh nữ sẽ tự động điều chỉnh theo như thế sẽ làm cho danh sách bảng điểm bị lệch.
Mong mọi người giúp đỡ.

Bạn coi thêm cách này thử? Mày mò mãi lại giống cách của Thaohip, ko đúng ý chủ topic
 

File đính kèm

Upvote 0
Nếu vậy bạn có thể giúp mình sử dụng VBA được không?
Cảm ơn bạn!
 
Upvote 0
Nếu vậy bạn có thể giúp mình sử dụng VBA được không?
Cảm ơn bạn!
Híc, tưởng dễ ăn ai dè gặm trúng cục xương
Bài này yêu cầu ngộ quá
Bạn nói:
Em đã dùng hàm vookup nhưng nếu em xóa tên một học sinh trong sheet danh sách thì trong sheet "Nữ" danh sách học sinh nữ sẽ tự động điều chỉnh theo như thế sẽ làm cho danh sách bảng điểm bị lệch.
nhưng bạn xóa theo kiểu nào
Trong bài mình sẽ làm theo cách xóa là Delete nguyên cả hàng nhé
Mã:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim Ws, d, Vung, VungDo, I, J, K, M, sTen, Mg()
Set Ws = Sheets("Danh Sach"): Set d = CreateObject("scripting.dictionary")
Set Vung = Ws.Range(Ws.[b5], Ws.[b10000].End(xlUp))
If ActiveSheet.Name <> "Danh Sach" Then
    If [b7] = vbNullString Then
        Ws.Columns("E:E").Hidden = True
        With Vung.Resize(, 7)
            .AutoFilter 4, ActiveSheet.Name
            .SpecialCells(12).Copy [b7]
            .AutoFilter
        End With
        Ws.Columns("E:E").Hidden = False
    Else
        VungDo = Range([b7], [b10000].End(xlUp)).Resize(, 6).Value
        For I = 1 To UBound(VungDo)
            If Not d.exists(VungDo(I, 1)) Then d.Add VungDo(I, 1), I
        Next I
            ReDim Mg(1 To Vung.Rows.Count, 1 To 6)
            For I = 1 To Vung.Rows.Count
                If Vung(I).Offset(, 3) = ActiveSheet.Name Then
                    If d.exists(Vung(I).Value) Then
                        M = d.Item(Vung(I).Value)
                        K = K + 1
                            For J = 1 To 6
                                Mg(K, J) = VungDo(M, J)
                            Next J
                    Else
                        K = K + 1
                        Mg(K, 1) = Vung(I): Mg(K, 2) = Vung(I).Offset(, 1): Mg(K, 3) = Vung(I).Offset(, 2)
                    End If
                End If
         Next I
          [b8:g1000].ClearContents
          [b8].Resize(K, 6) = Mg
    End If
End If
End Sub
Cách làm:
- Bạn nhập dữ liệu ở sheet "Danh Sach" ==> chọn sheet nào dữ liệu sẽ chuyển sang sheet đó
- Sau khi nhập điểm, bạn thử quay lại sheet "Danh Sach" thêm hoặc bớt dữ liệu ==> chọn sheet "Nam" hoặc "Nu" xem có thay đổi đúng yêu cầu không nhé
Thân
 

File đính kèm

Upvote 0
Híc, tưởng dễ ăn ai dè gặm trúng cục xương
Bài này yêu cầu ngộ quá
Bạn nói:

nhưng bạn xóa theo kiểu nào
Trong bài mình sẽ làm theo cách xóa là Delete nguyên cả hàng nhé
Mã:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim Ws, d, Vung, VungDo, I, J, K, M, sTen, Mg()
Set Ws = Sheets("Danh Sach"): Set d = CreateObject("scripting.dictionary")
Set Vung = Ws.Range(Ws.[b5], Ws.[b10000].End(xlUp))
If ActiveSheet.Name <> "Danh Sach" Then
    If [b7] = vbNullString Then
        Ws.Columns("E:E").Hidden = True
        With Vung.Resize(, 7)
            .AutoFilter 4, ActiveSheet.Name
            .SpecialCells(12).Copy [b7]
            .AutoFilter
        End With
        Ws.Columns("E:E").Hidden = False
    Else
        VungDo = Range([b7], [b10000].End(xlUp)).Resize(, 6).Value
        For I = 1 To UBound(VungDo)
            If Not d.exists(VungDo(I, 1)) Then d.Add VungDo(I, 1), I
        Next I
            ReDim Mg(1 To Vung.Rows.Count, 1 To 6)
            For I = 1 To Vung.Rows.Count
                If Vung(I).Offset(, 3) = ActiveSheet.Name Then
                    If d.exists(Vung(I).Value) Then
                        M = d.Item(Vung(I).Value)
                        K = K + 1
                            For J = 1 To 6
                                Mg(K, J) = VungDo(M, J)
                            Next J
                    Else
                        K = K + 1
                        Mg(K, 1) = Vung(I): Mg(K, 2) = Vung(I).Offset(, 1): Mg(K, 3) = Vung(I).Offset(, 2)
                    End If
                End If
         Next I
          [b8:g1000].ClearContents
          [b8].Resize(K, 6) = Mg
    End If
End If
End Sub
Cách làm:
- Bạn nhập dữ liệu ở sheet "Danh Sach" ==> chọn sheet nào dữ liệu sẽ chuyển sang sheet đó
- Sau khi nhập điểm, bạn thử quay lại sheet "Danh Sach" thêm hoặc bớt dữ liệu ==> chọn sheet "Nam" hoặc "Nu" xem có thay đổi đúng yêu cầu không nhé
Thân

Chào các Bạn !
Nhờ các Bạn code giúp mình nhập liệu vào các Sheet dựa trên cột có tên Sheet và tọa độ đến các sheet tương ứng để nhập (File đính kèm)

Cám ơn !
 

File đính kèm

Upvote 0
Chào các Bạn !
Nhờ các Bạn code giúp mình nhập liệu vào các Sheet dựa trên cột có tên Sheet và tọa độ đến các sheet tương ứng để nhập (File đính kèm)

Cám ơn !

Cái này chỉ VLOOKUP thôi mà dễ dàng như trở bàn tay, nhưng để có đáp án đúng bạn nên có File với tiêu đề thực tế..
 
Upvote 0
Xin chào các anh, chị. em là thành viên mới, em đang bí một vấn đề nhờ mọi người giúp đỡ em vấn đề này
Em có một danh sách học sinh, em muốn lấy tự động danh sách học sinh nữ ra một sheet khác (Nữ) dùng để nhập điểm. Em đã dùng hàm vookup nhưng nếu em xóa tên một học sinh trong sheet danh sách thì trong sheet "Nữ" danh sách học sinh nữ sẽ tự động điều chỉnh theo như thế sẽ làm cho danh sách bảng điểm bị lệch.
Mong mọi người giúp đỡ.

Cái này cũng dễ dàng như trở bàn tay, theo tôi thì chẳng cần theo dõi 2 sheet để làm gì, chỉ cần 1 sheet và chỉ sử dụng cột như sheet Danh Sach là đủ, muốn bất cứ điều gì thì trích lọc nó ra.
 
Upvote 0
Cái này chỉ VLOOKUP thôi mà dễ dàng như trở bàn tay, nhưng để có đáp án đúng bạn nên có File với tiêu đề thực tế..

Bạn giúp mình với, từ Sheet Main sẽ nhập số liệu vào các Sheet và địa chỉ đã biết (như File đính kèm).

Cám ơn !
 

File đính kèm

Upvote 0
Bạn giúp mình với, từ Sheet Main sẽ nhập số liệu vào các Sheet và địa chỉ đã biết (như File đính kèm).

Cám ơn !

Cái bạn yêu cầu quá trừu tượng, nghĩa là muốn nhập liệu cái gì đó vào sheet nào thì phải có 1 cái List danh sách, dựa vào cái List này thì muốn nhập liệu cái List đó vào sheeet nào là tùy ý mình chọn sheet để nhập bất kỳ, chứ không cần cột B như sheet Main (nghĩa là không cần liệt kê tên sheet1), muốn nhập cái danh sách đó vào bất kỳ sheet nào cũng được..
 
Lần chỉnh sửa cuối:
Upvote 0
Cái bạn yêu cầu quá trừu tượng, nghĩa là muốn nhập liệu cái gì đó vào sheet nào thì phải có 1 cái List danh sách, dựa vào cái List này thì muốn nhập liệu cái List đó vào sheeet nào là tùy ý mình chọn sheet để nhập bất kỳ, chứ không cần cột B như sheet Main (nghĩa là không cần liệt kê tên sheet1), muốn nhập cái danh sách đó vào bất kỳ sheet nào cũng được..

Có nghĩa là tại sheet Main mình đã tìm ra được sheetname và address được chứa tại cột B và cột C. Sau đó mình nhập số liệu vào cột D này, và code nút bấm "Nhập" thì các giá trị ở cột D sẽ nhập vào các sheet có tên ở cột B, address cột C tương ứng.

Cám ơn !
 
Lần chỉnh sửa cuối:
Upvote 0
Có nghĩa là tại sheet Main mình đã tìm ra được sheetname và address được chứa tại cột B và cột C. Sau đó mình nhập số liệu vào cột D này, và code nút bấm "Nhập" thì các giá trị ở cột D sẽ nhập vào các sheet có tên ở cột B, address cột C tương ứng.

Cám ơn !


Mình đã làm OK rồi.

cám ơn !
 
Upvote 0
Web KT

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

Back
Top Bottom