Tạo chức năng Update dữ liệu (1 người xem)

Liên hệ QC

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

truonghg

Thành viên mới
Tham gia
12/3/08
Bài viết
17
Được thích
10
Lời đầu tiên em xin gửi lời cảm ơn tới BQT GPE và các Pro đã giúp em trong các biểu mẫu vừa qua. Qua mày mò học hỏi em cũng đã bước nào dựa trên code của các pro để làm thành 1 form nhập, tìm kiếm danh sách khách hàng. Nhưng em bị vướng mắc khi tạo thêm 1 chức năng Cập nhập thêm thông tin cho danh sách có sẵn đã được record từ trước. Nay em xin nhờ các cao thủ trong làng GPE giúp em.
Em xin chân thành cảm ơn!
 

File đính kèm

Bạn xem file nhé mình sửa lại chút it.
 

File đính kèm

Riêng phần LOC thì tôi ko nói làm gì... còn chỉ mấy cái vụ nhập liệu và cập nhật đơn giãn thế kia có thể khỏi cần code vẫn chơi dc tốt...
Bạn xem tại đây nhé:
http://www.giaiphapexcel.com/forum/showthread.php?t=8464
Tôi chỉ dùng công thức vẩn có thể nhập mới hoặc sửa dử liệu như thường
ANH TUẤN
 
Ban thu xem sao

Chưa hiểu ý bạn lắm, co phải như vậy klhông?
 
Lần chỉnh sửa cuối:
truonghg đã viết:
Bác ơi, bác xem lại hộ em chút nhé, em thử thì nó toàn ghi thêm 1 record mới chứ ko ghi đè lên record cũ.
Update thì nó cập nhật thêm là đúng sao bạn lại muốn ghi đè lên dữ liệu cũ. Ý bạn là muốn xoá hết cũ đi và ghi mới vào sao.
 
salam đã viết:
Update thì nó cập nhật thêm là đúng sao bạn lại muốn ghi đè lên dữ liệu cũ. Ý bạn là muốn xoá hết cũ đi và ghi mới vào sao.
Ah... cái này dể hiểu mà Salam.. Khi nhập liệu, hoặc là ta nhập mới... nhưng cũng có khi xem lại dử liệu củ, cảm thấy sai thì sửa, bấm Update thì nó sẽ lấy cái mới vừa sửa đè vào cái củ (đương nhiên)
Vậy code của chúng ta nếu thông minh phải nhận biết dc đây là dử liệu củ hay nhập mới, nếu là mới thì.. thêm, nếu củ thì.. đè... he.. he...
(Hỏi bà xã xem có phải vậy ko?)
ANH TUẤN
 
anhtuan1066 đã viết:
(Hỏi bà xã xem có phải vậy ko?)
ANH TUẤN

trùi ah, a trao đổi Excel hay là...??? hehe

+ nói vậy việc ktra DL sẽ tốn nguồn lực (thời gian / khối lượng tính toán) ta cần cân nhắc điều này
 
anhtuan1066 đã viết:
Riêng phần LOC thì tôi ko nói làm gì... còn chỉ mấy cái vụ nhập liệu và cập nhật đơn giãn thế kia có thể khỏi cần code vẫn chơi dc tốt...
Bạn xem tại đây nhé:
http://www.giaiphapexcel.com/forum/showthread.php?t=8464
Tôi chỉ dùng công thức vẩn có thể nhập mới hoặc sửa dử liệu như thường
ANH TUẤN

Bài bác AnhTuan cho em đã xem, rất hay và em muốn áp dụng vào bảng của em mỗi tội em vẫn chưa biết được là bác lấy cái :
=Hyperlink(link&"!Ma",link) thì cái "!Ma" ở chỗ nào vậy bác.
Và làm sao để nhập dữ liệu vào text box nó sẽ record vào bảng danh sách
Bác có thể phân tích kỹ bài này cho em học được ko ?
 
tigertiger đã viết:
trùi ah, a trao đổi Excel hay là...??? hehe

+ nói vậy việc ktra DL sẽ tốn nguồn lực (thời gian / khối lượng tính toán) ta cần cân nhắc điều này
Nếu viết bằng VBA thì tôi chưa nghĩ ra dc cách viết thế nào, còn dùng công thức thì... quá dể... Dùng Match để tìm xem thằng nó có hay ko? Có nghĩa là CỦ, ko có nghĩa là MỚI.. thế thôi... Còn Update uh? Cũng quá dể luôn...
ANH TUẤN
 
truonghg đã viết:
Lời đầu tiên em xin gửi lời cảm ơn tới BQT GPE và các Pro đã giúp em trong các biểu mẫu vừa qua. Qua mày mò học hỏi em cũng đã bước nào dựa trên code của các pro để làm thành 1 form nhập, tìm kiếm danh sách khách hàng. Nhưng em bị vướng mắc khi tạo thêm 1 chức năng Cập nhập thêm thông tin cho danh sách có sẵn đã được record từ trước. Nay em xin nhờ các cao thủ trong làng GPE giúp em.
Em xin chân thành cảm ơn!
Em đã làm gần được rồi đấy.

Mỗi một khách hàng đều có 1 mã, khi Update, nó sẽ căn cứ vào mã đó để so sánh trong vùng đã có mã đó chưa:
->nếu chưa có thì thêm vào
->nếu có rồi thì sẽ báo cáo là có rồi, hỏi có muốn sửa lại theo cái mới không ??
-> Nếu không thì thoát luôn
-> Nếu có thì sẽ tiến hành đè luôn lên cái cũ. Những chỉ tiêu nào chưa có gì cả thì nó sẽ đè lên, còn những chỉ tiêu nào đã có:
-> Nếu muốn thì đè lên luôn
-> Nếu muốn hỏi thì hỏi xem có ghi đè không
-> Cứ ghi đè lên, nhưng phần cũ sẽ được lưu vào comment của cell đó, để tiện theo dõi.
Chúc em thành công!!

Thân!
 
truonghg đã viết:
Bài bác AnhTuan cho em đã xem, rất hay và em muốn áp dụng vào bảng của em mỗi tội em vẫn chưa biết được là bác lấy cái :
=Hyperlink(link&"!Ma",link) thì cái "!Ma" ở chỗ nào vậy bác.
Và làm sao để nhập dữ liệu vào text box nó sẽ record vào bảng danh sách
Bác có thể phân tích kỹ bài này cho em học được ko ?
Nó nằm trong Name ấy... Bạn vào menu Insert\Name\Define sẽ thấy...
Với Bắp: Bắp đã đưa ra 1 quy trình rất chặt chẽ... Nhưng nói thì nói vậy chứ mà làm ấy à... he.. he... E rằng em út nó sẽ ko tự tay làm dc... Vậy thôi Bắp giúp luôn đi
ANH TUẤN
 
anhtuan1066 đã viết:
Ah... cái này dể hiểu mà Salam.. Khi nhập liệu, hoặc là ta nhập mới... nhưng cũng có khi xem lại dử liệu củ, cảm thấy sai thì sửa, bấm Update thì nó sẽ lấy cái mới vừa sửa đè vào cái củ (đương nhiên)
Vậy code của chúng ta nếu thông minh phải nhận biết dc đây là dử liệu củ hay nhập mới, nếu là mới thì.. thêm, nếu củ thì.. đè... he.. he...
(Hỏi bà xã xem có phải vậy ko?)
ANH TUẤN

Mã:
tim = S01.Range("F17").Value
If WorksheetFunction.CountIf(S03.Range("C:C"), tim) <> 1 Then
    Range("B65535").Select
    Selection.End(xlUp).Select
    ActiveCell.Offset(1, 0).Select
Else
    Columns("C:C").Select
    Selection.Find(What:=tim).Activate
    ActiveCell.Offset(0, -1).Select
End If
Em thêm đoạn này vào có được không các Bác.
 

File đính kèm

Tôi vẫn cãm giác nếu dùng 2 bảng: Nhập liệucập nhật như thế thì có vẽ hơi bị... kỳ kỳ...
Nên chăng làm 1 bảng duy nhất... ???
ANH TUẤN
 
anhtuan1066 đã viết:
Tôi vẫn cãm giác nếu dùng 2 bảng: Nhập liệucập nhật như thế thì có vẽ hơi bị... kỳ kỳ...
Nên chăng làm 1 bảng duy nhất... ???
ANH TUẤN
Thực ra chỉ cần một bảng cập nhật là đủ rồi. Không biết ý của tác giả làm gì.
(không tin hỏi Bà xã mà coi).
 
anhtuan1066 đã viết:
Nó nằm trong Name ấy... Bạn vào menu Insert\Name\Define sẽ thấy...
Với Bắp: Bắp đã đưa ra 1 quy trình rất chặt chẽ... Nhưng nói thì nói vậy chứ mà làm ấy à... he.. he... E rằng em út nó sẽ ko tự tay làm dc... Vậy thôi Bắp giúp luôn đi
ANH TUẤN
Vì thời gian ngắn nên em không chau chuốt được, vậy bác tham khảo nhé :
PHP:
Sub NhapLieu()
    On Error Resume Next
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    
    Dim HC As Integer, i As Integer
    Dim MaKH As String
    Dim OB As Range
    Dim Comm As Boolean
    MaKH = S01.Range("B17").Value
    If MaKH = "" Then Exit Sub
    HC = S03.Range("B65000").End(xlUp).Row + 1
    If WorksheetFunction.CountIf(S03.Range("C3:C" & HC - 1), MaKH) = 0 Then
        GoTo ghi
    Else
        If MsgBox(" - Ma Khach Hang nay da ton tai!!" & Chr(13) & Chr(13) & " - Ban muon ghi de ??", vbYesNo, "MrOkebab") = vbYes Then
            i = WorksheetFunction.Match(MaKH, S03.Range("C3:C" & HC), 0)
            HC = i + 2
            S03.Range("B" & HC & ":M" & HC).ClearComments
            Comm = True
            GoTo ghi
        Else
            Exit Sub
        End If
    End If

ghi:
    i = 15
    For Each OB In S03.Range("B" & HC & ":M" & HC)
        i = i + 1
        If OB.Value <> "" And Comm = True Then
            OB.AddComment
            OB.Comment.Visible = False
            OB.Comment.Text Text:="Ngay : " & Format(Date, "dd/mm/yyyy") & Chr(10) & OB.Value
        End If
        OB.Value = S01.Range("B" & i).Value
    Next
    'S01.Range("B17:B27").ClearContents
    Range("B17").Select
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic

End Sub

Và bỏ luôn Update đi, vì CẬP NHẬT chính là UPDATE rồi (trong TH đã có dữ liệu).

Thân!
 

File đính kèm

Em xin chân thành cảm ơn các bác đã dạy và hướng dẫn chi tiết tận tình cho em. Em đã làm được và áp dụng cả form "Lý Lịch" vào nữa. Giờ bảng tính của em được gộp code và công thức của các bác lại (1 nồi lẩu thập cẩm). Nói là 1 nồi lẩu thập cẩm thì hơi mang tính chất ăn uống quá nhưng nó lại giúp ích cho em rất nhiều (ăn xong nồi lẩu này vỡ cái óc ra đc nhiều vấn đề). Bác nào ở Hà Nội thì cho em số Mobile để em mời đi uống cafe. @$@!^%
Một lần nữa bằng tất cả tấm lòng em xin chân thành cảm ơn mọi người đã giúp đỡ em hoàn thành bài tập này.
Trân trọng!
@$@!^% Hoàng Gia Trường!-=.,,
 
Web KT

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

Back
Top Bottom