Xem mã hàng theo khách hàng (1 người xem)

Liên hệ QC

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

NguyenthiH

Thành viên mới đăng ký
Tham gia
11/12/16
Bài viết
965
Được thích
175
Giới tính
Nữ
Chào các anh chị!!!
Em đưa file, mong các anh chị giúp cho khi chọn khách hàng ở Validation trong C2 trong sheet!Xem thì lọc ra tổng tồn đầu,, tổng nhập,tổng xuất, và tổng tồn cuối của các mã hàng của khách hàng đó,như trong file em có ví dụ 2 mã hàng.
 

File đính kèm

Lần chỉnh sửa cuối:
Các anh chị giúp em với.
 
Upvote 0
Dữ liệu bạn cho không rõ ràng, bạn có 3 Sheet dữ liệu Tồn - Nhập - Xuất, cả 3 sheet đều có Khách hàngMã Hàng, mỗi Sheet mỗi khách hàng khác mã khác. Bạn có Sheet xem lọc theo khách hàng, thế khách hàng bạn cần lọc nó theo sheet nào?
 
Upvote 0
Chào các anh chị!!!
Em đưa file, mong các anh chị giúp cho khi chọn khách hàng ở Validation trong C2 trong sheet!Xem thì lọc ra tổng tồn đầu,, tổng nhập,tổng xuất, và tổng tồn cuối của các mã hàng của khách hàng đó,như trong file em có ví dụ 2 mã hàng.
Xem code này thử xem sao bạn
Mã:
Sub TrichLoc()
Dim i As Long, aTonDau(), aNhap(), aXuat(), KetQua(), Dic As Object, k As Long, J As Long, Dieukien
Set Dic = CreateObject("Scripting.Dictionary")
With Sheet1
aTonDau = .Range("B4:H" & .Cells(.Rows.Count, "B").End(xlUp).Row).Value
End With
With Sheet2
aNhap = .Range("B4:H" & .Cells(.Rows.Count, "B").End(xlUp).Row).Value
End With
With Sheet3
aXuat = .Range("B4:H" & .Cells(.Rows.Count, "B").End(xlUp).Row).Value
End With
    ReDim KetQua(1 To UBound(aTonDau) + UBound(aNhap) + UBound(aXuat), 1 To 8)
  For i = 1 To UBound(aTonDau, 1)
    Dieukien = aTonDau(i, 1) & "#" & aTonDau(i, 7)
    If Not Dic.Exists(Dieukien) Then
        k = k + 1
        Dic.Add Dieukien, k
        KetQua(k, 1) = k
        KetQua(k, 2) = aTonDau(i, 1)
        KetQua(k, 3) = aTonDau(i, 4)
        KetQua(k, 4) = aTonDau(i, 5)
        KetQua(k, 8) = aTonDau(i, 7)
    Else
        J = Dic.Item(Dieukien)
        KetQua(J, 4) = KetQua(J, 4) + aTonDau(i, 5)
    End If
   Next
   For i = 1 To UBound(aNhap, 1)
    Dieukien = aNhap(i, 1) & "#" & aNhap(i, 7)
    If Not Dic.Exists(Dieukien) Then
        k = k + 1
        Dic.Add Dieukien, k
        KetQua(k, 1) = k
        KetQua(k, 2) = aNhap(i, 1)
        KetQua(k, 3) = aNhap(i, 4)
        KetQua(k, 5) = aNhap(i, 5)
        KetQua(k, 8) = aNhap(i, 7)
    Else
        J = Dic.Item(Dieukien)
        KetQua(J, 5) = KetQua(J, 5) + aNhap(i, 5)
    End If
   Next
   For i = 1 To UBound(aXuat, 1)
    Dieukien = aXuat(i, 1) & "#" & aXuat(i, 7)
    If Not Dic.Exists(Dieukien) Then
        k = k + 1
        Dic.Add Dieukien, k
        KetQua(k, 1) = k
        KetQua(k, 2) = aXuat(i, 1)
        KetQua(k, 3) = aXuat(i, 4)
        KetQua(k, 6) = aXuat(i, 5)
        KetQua(k, 8) = aXuat(i, 7)
    Else
        J = Dic.Item(Dieukien)
        KetQua(J, 6) = KetQua(J, 6) + aXuat(i, 5)
    End If
   Next
   Dim aKetQua As Variant, jk As Long
    ReDim aKetQua(1 To UBound(KetQua), 1 To 7)
     For i = 1 To UBound(KetQua)
      If KetQua(i, 8) = Sheet4.Range("C2").Value Then
        jk = jk + 1
           aKetQua(jk, 1) = jk
        For J = 2 To 6
            aKetQua(jk, J) = KetQua(i, J)
        Next
         aKetQua(jk, 7) = aKetQua(jk, 4) + aKetQua(jk, 5) - aKetQua(jk, 6)
      End If
     Next
With Sheet4
    .Range("A5:H10000").ClearContents
If jk <> 0 Then
    .Range("A5").Resize(UBound(aKetQua, 1), 7).Value = aKetQua
End If
End With
End Sub
 

File đính kèm

Upvote 0
Chào các anh chị!!!
Em đưa file, mong các anh chị giúp cho khi chọn khách hàng ở Validation trong C2 trong sheet!Xem thì lọc ra tổng tồn đầu,, tổng nhập,tổng xuất, và tổng tồn cuối của các mã hàng của khách hàng đó,như trong file em có ví dụ 2 mã hàng.
Bạn thử.
Mã:
Sub laygiatri(ByVal dk1 As String)
    Dim arr, kq, i As Long, j As Long, lr As Long, a As Long, dks As String, dic As Object, dk As String, b As Long
    Set dic = CreateObject("scripting.dictionary")
    With Sheets("tondau")
         lr = .Range("B" & Rows.Count).End(xlUp).Row
         arr = .Range("B4:H" & lr).Value
         ReDim kq(1 To UBound(arr), 1 To 7)
    End With
        
        For i = 1 To UBound(arr)
            dks = arr(i, 7)
            If UCase(dk1) = UCase(dks) Then
               dk = arr(i, 1)
               If Not dic.exists(dk) Then
                  a = a + 1
                  kq(a, 1) = a
                  kq(a, 2) = dk
                  kq(a, 3) = arr(i, 2)
                  kq(a, 4) = arr(i, 5)
                  kq(a, 7) = kq(a, 4)
                  dic.Add dk, a
               Else
                  b = dic.Item(dk)
                  kq(b, 4) = arr(i, 5) + kq(b, 4)
                  kq(b, 7) = kq(b, 4)
               End If
           End If
      Next i
   With Sheets("nhap")
        lr = .Range("B" & Rows.Count).End(xlUp).Row
        arr = .Range("B4:H" & lr).Value
        For i = 1 To UBound(arr)
            dks = arr(i, 7)
            If UCase(dk1) = UCase(dks) Then
               dk = arr(i, 1)
               b = dic.Item(dk)
               If b Then
                  kq(b, 5) = kq(b, 5) + arr(i, 5)
                  kq(b, 7) = kq(b, 4) + kq(b, 5)
               End If
           End If
        Next i
   End With
   With Sheets("xuat")
        lr = .Range("B" & Rows.Count).End(xlUp).Row
        arr = .Range("B4:H" & lr).Value
        For i = 1 To UBound(arr)
            dks = arr(i, 7)
            If UCase(dk1) = UCase(dks) Then
               dk = arr(i, 1)
               b = dic.Item(dk)
               If b Then
                  kq(b, 6) = kq(b, 6) + arr(i, 5)
                  kq(b, 7) = kq(b, 4) + kq(b, 5) - kq(b, 6)
               End If
           End If
        Next i
   End With
   With Sheets("xem")
        lr = .Range("B" & Rows.Count).End(xlUp).Row
        If lr > 4 Then .Range("A5:G" & lr).ClearContents
        If a Then .Range("A5:G5").Resize(a).Value = kq
  End With
End Sub
 

File đính kèm

Upvote 0
Cám ơn bạn @vanaccex nhiều, đúng rồi ạ, bạn làm cho mình các cell D3. E3, F3, như trong file mình có ghi chú với.
Cám ơn bạn @snow25 nhiều, file bạn chưa đúng, cột Đvt lại lấy loại hàng, và mình thử chạy khách hàng FASH thì thấy sai, không có SL nhập chỉ có tồn, và mấy khách hàng khác cũng sai. Mong bạn chỉnh code lại dùm.
 
Upvote 0
Cám ơn bạn @vanaccex nhiều, đúng rồi ạ, bạn làm cho mình các cell D3. E3, F3, như trong file mình có ghi chú với.
Cám ơn bạn @snow25 nhiều, file bạn chưa đúng, cột Đvt lại lấy loại hàng, và mình thử chạy khách hàng FASH thì thấy sai, không có SL nhập chỉ có tồn, và mấy khách hàng khác cũng sai. Mong bạn chỉnh code lại dùm.
Cái sum là sao vậy bạn ! Hiện tại là mình đã tính tổng theo từng mã và khách hàng rồi nhỉ
 
Upvote 0
Là vầy nè bạn, nếu chọn khách hàng MORE thì cell D3 là Sum của D5:D183, E3=Sum(E5:E183), F3=Sum(F5:F183), G3=Sum(G5:G183)cón nếu khách hàng là TS14 thì E3=Sum(E5:E81), D3=Sum(D5:D81), F3=Sum(F5:F81), G3=Sum(G5:G81)
 
Upvote 0
Là vầy nè bạn, nếu chọn khách hàng MORE thì cell D3 là Sum của D5:D183, E3=Sum(E5:E183), F3=Sum(F5:F183), G3=Sum(G5:G183)cón nếu khách hàng là TS14 thì E3=Sum(E5:E81), D3=Sum(D5:D81), F3=Sum(F5:F81), G3=Sum(G5:G81)
Vậy thì bạn thêm chỗ kết quả sửa thành thế này
Mã:
With Sheet4
    .Range("A5:H10000").ClearContents
If jk <> 0 Then
    .Range("A5").Resize(UBound(aKetQua, 1), 7).Value = aKetQua
    .Range("D3").Resize(1, 4).Formula = "=sum(D5:D" & jk + 4 & ")"
End If
End With
 
Upvote 0
Là vầy nè bạn, nếu chọn khách hàng MORE thì cell D3 là Sum của D5:D183, E3=Sum(E5:E183), F3=Sum(F5:F183), G3=Sum(G5:G183)cón nếu khách hàng là TS14 thì E3=Sum(E5:E81), D3=Sum(D5:D81), F3=Sum(F5:F81), G3=Sum(G5:G81)
Bạn thử thêm 1sub . Lấy dòng cuối. Tại E3 =sum(range ("e5:e"&dongcuoi))
 
Upvote 0
Vậy thì bạn thêm chỗ kết quả sửa thành thế này
Mã:
With Sheet4
    .Range("A5:H10000").ClearContents
If jk <> 0 Then
    .Range("A5").Resize(UBound(aKetQua, 1), 7).Value = aKetQua
    .Range("D3").Resize(1, 4).Formula = "=sum(D5:D" & jk + 4 & ")"
End If
End With
Chà chà thấy chị code lên tay quá.
 
Upvote 0
Vậy thì bạn thêm chỗ kết quả sửa thành thế này
Mã:
With Sheet4
    .Range("A5:H10000").ClearContents
If jk <> 0 Then
    .Range("A5").Resize(UBound(aKetQua, 1), 7).Value = aKetQua
    .Range("D3").Resize(1, 4).Formula = "=sum(D5:D" & jk + 4 & ")"
End If
End With
Chị siêu quá
vanaccex
 
Upvote 0
Cần đề phòng trường hợp mã hàng (nào đó) chưa có trong trang 'TonDau', nhưng có trong 'Nhap' (hay cả trong 'Xuat')
Cho nên ta phải lập danh sách duy nhất cho mã hàng của 1 khách hàng đã được chọn
Danh sách này phải trãi qua 3 trang tính mà tổng hợp lại, có đúng vậy không chủ bài đăng?
 
Upvote 0
Tới bác @SA_DQ , em nghĩ không cần, nếu vậy thì mấy mã đó sẽ không có "Tồn Đầu" chỉ có nhập, nếu không tồn không nhập mà có xuất thì phải xem lại (Sai)
 
Upvote 0
Thủ kho này to hơn thủ trưởng rồi!
Cũng có trường hợp xuất cho phân xưỡng, nhưng nhà cung cấp chưa ra hóa đơn để nhập hàng vô kho mà!
 
Upvote 0
Tới bác @SA_DQ , em nghĩ không cần, nếu vậy thì mấy mã đó sẽ không có "Tồn Đầu" chỉ có nhập, nếu không tồn không nhập mà có xuất thì phải xem lại (Sai)

Anh thấy ý bác SA_DQ đúng đó. Em phải có một bảng mã hàng tổng, đầy đủ nhất sau đó dựa vào đó mà tổng hợp dữ liệu.
Anh thấy tổng mã MORE của cả 3 sheet Tồn, Nhâp, Xuất là 320 mã. Tổng truy vấn ra 183 mã. Vậy code cho báo cáo có không lấy mã hàng nào có Tồn - Nhập - Xuất có giá trị = 0 không?
 
Upvote 0
Cũng có trường hợp xuất cho phân xưỡng, nhưng nhà cung cấp chưa ra hóa đơn để nhập hàng vô kho mà!
Hàng vào kho không có hóa đơn, ra khỏi kho cũng không có hoạ đơn? Làm ăn kể cũng lạ. Người ta bắt được thì rất rách việc. Mà trên đường hàng về kho mà người ta bắt được cũng chết. Ngay cả thị trường đen khi người ta đi lấy hàng nhiều người vấn phải mua / xin hóa đơn giả để đi đường cho an toàn.
Thủ trưởng này là thủ trưởng kiểu ra lệnh miệng: em cứ làm, sai đâu anh chịu? :D
 
Upvote 0
(+) Bây giờ thì có chuyện các chủ đầu tư (nhất là trong ngành xây dựng) trong tháng cứ lấy hàn theo hóa đơn tạm (Hóa đơn xanh), cuối tháng mới thanh toán 3 bên
(+) Cũng có chuyện Mua hàng xách tay bên Âu Nhật (Thanh toán bằng ngoại tệ) Mà thời bao cấp thì CQ có đô cũng không dễ xài, nếu không có giấy phép con (. . . )
Nhà máy thì làm ca kíp liên tù tì, ngõ hầu tiết kiệm năng lượng, Vậy hư máy vô ngày thứ 7 hay T.`6 phải chờ đến thứ 2 tuần sau mới nhập kho & xuất phụ tùng sửa theo thủ tục sao?

Cái bài bản mà bạn nói đó không thích hợp lắm khi áp dụng cho chu trình SX của ta hiện nay; Cái đó là chu trình SX thời bao cấp & không thể năng động!
Cái đó chỉ thích hợp với các nước có nền cônghiệp tiên tiến xa với & mơ ước đối với VN!
:D
Nhớ cách đây hơn 20 năm; N/m mình mua vòng bi từ Nhật xách tay chỉ trong ngày; Nhưng thủ tục phải có chữ ký của thứ trưởng (trở lên) thời đó;Nên tháng sau mới nhập & xuất kho được.
 
Lần chỉnh sửa cuối:
Upvote 0
Bất cứ xuất nhập kho nào cũng phải có hóa đơn, hoặc chứng cứ nào đấy. Có thể bạn gọi là hóa đơn xanh, đỏ. Nhưng phải có chứng cứ. Không thể vào, ra kho không có chứng cứ nào.

Tôi tin là các cơ quan quản lý sẽ không cho phép nhập, xuất kho không có chứng cứ, dù bạn viện lý do sản xuất nào chăng nữa. Vd. người ta có thể chấp nhận cho phép thủ trưởng ký lệnh xuất và ghi phiếu sau. Làm gì có chuyện do nhu cầu sản xuất nên tôi cho mình quyền vi phạm pháp luật.

Nhưng nếu không chờ tới thứ 2 mà xuất luôn ngày thứ 7? Thứ 2 hay 7 thì đều phải có phiếu xuất. Phải tới thứ 2 mới có thể viết phiếu xuất? Tại sao không thể viết phiếu xuất vào thứ 7? Rằng thứ 7 không có thủ kho, thứ 2 mới đi làm? Thế công nhân người ta phá khóa vào kho lấy hàng? Hay là thứ 7 thủ kho đau tay nên thứ 2 mới viết phiếu được.

Không ở đâu chấp nhận vào và ra kho không có "dấu vết". Nếu không là phiếu hoàn chỉnh thì cũng phải là chứng cứ tạm thời nào đấy.

Ở Ba Lan phòng thuế ngoài kiểm tra ở trụ sở người ta có quyền kiểm tra tại nơi buôn bạn, ngoài chợ. Mặt hàng này có phiếu không, bao nhiêu, ghi trong sổ không. Nếu kiểu bán trước, trình phiếu mua sau thì ai quản lý được? Tôi mua 1000 chiếc áo nhưng không có phiếu, không ghi sổ? Nếu không may bị kiểm tra thì nói sẽ có phiếu sau 1 tháng? Nếu may mắn thì bán hết và không ghi sổ?
Thứ trưởng thì đã là gì. Nhiều Bộ trưởng còn phạm pháp hàng ngày. Nhưng nếu người ta phát hiện ra thì sẽ có chuyện. Sẽ ra tòa, sẽ đi tù. Kinh doanh lớn hay nhỏ thì cũng phải theo luật. Chả có ông Bộ trưởng nào có quyền làm thay pháp luật.
 
Lần chỉnh sửa cuối:
Upvote 0
Mình đưa Ô. Thứ trưởng kí vào là vì xài tiền đô thời bấy giờ của doanh nghiệp (trừ liên doanh) là phải có chữ kí duyệt của Ô. ta mới được hạnh toán.
Kiểu xuất khống hay thẻ kho âm cũng có thể hiểu tạm xuất tái nhập hay tạm nhập tái xuất chăng?

Chúc mừng năm mới vui vẻ & tràn đầy hạnh phúc!
 
Upvote 0
...Nhớ cách đây hơn 20 năm; N/m mình mua vòng bi từ Nhật xách tay chỉ trong ngày; Nhưng thủ tục phải có chữ ký của thứ trưởng (trở lên) thời đó;Nên tháng sau mới nhập & xuất kho được.
Theo tôi hiểu thì cái bạn gọi vòng bi, chúng tôi gọi là bạc đạn (ball bearing). Xin lỗi nếu tôi lầm.
Khoảng 25 năm trước, tôi có nhận làm tư vấn quản lý vật tư cho một công ty liên doanh.
Điều mà tôi nhớ là lúc ấy vừa mở cửa, các công ty ngoại quốc ào ào vào chào hàng ở VN, nhập cảng đâu có khó lắm. Chỉ riêng bạc đạn thì thấy họ rao bán bạc đạn SKF (Thuỵ Điển) thoải mái.
Chỉ riêng có vài món đồ nằm trong danh sách "nhạy cảm" mới phải xin phép rườm rà. Điển hình là đường rây (như đường rây xe hoả), từ lúc xin giấy phép cho đến lúc lấy được hàng về lắp ghép mất gần một năm. Suốt thời gian chờ đợi có đường rây để đặt gòng (wagon) đưa hàng từ khâu sản xuất sang bãi chứa, bên sản xuất phải dùng thêm xe tải hợp đồng ngoài, tốn kém bắt khùng.

...
Thủ trưởng này là thủ trưởng kiểu ra lệnh miệng: em cứ làm, sai đâu anh chịu? :D
Cái quy trình hệ thống quản lý tôi xây dựng cho công ty ấy lúc đưa vào áp dụng bị bà con phản ứng kịch liệt. Và chỉ áp dụng được nửa năm thì bắt buộc phải bỏ đi, người ta trở về cái quy trình thời thượng (chắc từ thời bao cấp).
Lý do: quy trình của tôi kiểm soát "lỏng lẻo" quá. Điển hình chỉ tiêu độ thất thoát cho phép là 0,5% (*) cho năm đầu và tiến tới 0,2% sau 5 năm.
Quy trình thời thượng có cả đống điểm kiểm soát, và độ thất thoát cho phép là 0%. Rất tiếc là cái quy trình để tính độ thất thoát thì tôi nhìn vào muốn ói.
Chi tiết quan trọng cần biết: thủ kho là chồng của kế toán trưởng.

(*) chỉ tiêu của kiểm toán lúc ấy là <1%. Công ty liên doanh nên có kiểm toán tư.
 
Lần chỉnh sửa cuối:
Upvote 0
Cái bạc đạn mà mình nêu là của mô tơ ngàn HP; Thời cấm vận không dễ để mua theo phương thức chính thống. Phải qua trung gian nên gọi nôm na là hàng xách tay.
 
Upvote 0
Nguyên tắc là nếu luật không nói rõ là cấm thì được phép. Luật cũng có điều khoản chưa chính xác, lỏng lẻo. Vì luật cũng là do con người lập ra mà. Ở mỗi thời điểm cứ làm theo luật hiện hành thôi. Nếu luật chưa phù hợp thì sẽ có sửa đổi. Do quốc hội hay bộ ngành thông qua, tùy theo chức năng trong vấn đề cụ thể. Cho dù điều khoản chưa phù hợp với thực tế mới nhưng chưa được chỉnh sửa mà tự ý vi phạm thì vẫn ra tòa.
 
Upvote 0
Rất đồng ý với bạn! Về nguyên tắc mà nói: Luật bao giờ cũng có độ trễ so với thực tiển.

Cho nên nói rằng: Lợi dụng khe hở pháp luật để . . . . (thực hiện hành vi bậy bạ nào đó) là câu nói nên bỏ. & ai xài câu đó là những người chưa thấu đáo pháp luật! :D

& đã từng có người iêu cầu cấm nhập tỏi từ Thái về VN(?)
 
Upvote 0
Từ code bài #4 của bạn @vanaccex , em thêm chổ này để Sort dữ liệu và kẻ Border, phần sort em thấy cũng được rồi, còn phần kẻ Border thì chưa đúng, tức là dữ liệu lọc ra tới đâu thì kẻ Border tới đó chứ không phải là lần đầu chạy bao nhiêu dòng thì cứ giữ thế(thiếu code xóa Border).
Mong các anh chị xem và chỉ cho em cái sai để chỉnh code hoàn thiện hơn, và cũng mong bạn @vanaccex chỉnh dùm code để chạy luôn khi chọn khách hàng ở C2 sheet!Xem (dùng Worksheet_Change)
Mã:
If jk <> 0 Then
    .Range("A5").Resize(UBound(aKetQua, 1), 7).Value = aKetQua
    .Range("D3").Resize(1, 4).Formula = "=sum(D5:D" & jk + 4 & ")"
    .Range("B5:G5").Resize(jk + 1).Sort [B5], Header:=xlNo
    .Range("A4:G4").Resize(jk + 1).Borders.LineStyle = 1
End If
 
Upvote 0
ClearContents là xóa nội dung. Muốn xóa vd. định dạng thì ClearFormats. Muốn xóa tất tần tật thì Clear. Thế thôi.
 
Upvote 0
Theo tôi hiểu thì cái bạn gọi vòng bi, chúng tôi gọi là bạc đạn (ball bearing).
Một lần tôi cũng phải dịch sang tiếng Việt và tôi dùng từ "vòng bi". Thì rõ ràng là vòng bi rồi. Nhưng sau đó có lần tình cờ đọc trên mạng từ "bạc đạn". Thì ra nó cũng là "vòng bi". Có lẽ là từ dùng bởi những người trong ngành. Vì thế dịch sang tiếng Việt dễ hơn nhiều. Chả cần biết từ dùng bởi các vị trong ngành. Mà nếu không biết thì cứ dùng từ phổ thông. Ai cũng hiểu, kể cả các vị trong ngành. Nhưng dịch từ tiếng Việt mới chết. Có lần tôi phải dịch từ tiếng Việt và vấp phải từ "ba vớ". Lần đầu nghe nên chả biết nó là gì. Và cho tới bây giờ cũng chả biết chính xác "ba vớ" nó là cái quái gì.
 
Upvote 0
@ chủ bài đăng:
Tuy là cù lần, nhưng phải vầy mới đúng nè; Bạn kiểm thử xem

:D
(1) Một lần tôi cũng phải dịch sang tiếng Việt và tôi dùng từ "vòng bi". . . . . Nhưng sau có lần tình cờ đọc trên mạng từ "bạc đạn". Thì ra nó cũng là "vòng bi". Có lẽ là từ dùng bởi những người trong ngành.
(2) Có lần tôi phải dịch từ tiếng Việt và vấp phải từ "ba vớ". Lần đầu nghe nên chả biết nó là gì. Và cho tới bây giờ cũng chả biết chính xác "ba vớ" nó là cái quái gì.
Từ bạc đạn là phương ngữ của những nhà kỹ thuật phương nam
Từ 'ba zớ' cũng vậy,
Là thứ bỏ đi khi gia công kim loại (theo như mình hiểu lâu nay);
 

File đính kèm

Upvote 0
Tiếng kỹ thuật trong Nam gọi cái vòng lót giữa trục và ổ quay là "bạc". Nếu cái vòng đó bằng thau trơn thì nó là "bạc thau", tiếng Anh là "bush". Nếu nó là hai cái vòng, giữa đặt hàng đạn (tiếng Nam gọi bi là đạn) thì gọi là "bạc đạn" (ball bearing), tiếng Anh là. Nếu trục quay cần chịu lực lớn thì bạc sẽ có chiều cao (sâu) gấp đôi, và dùng hai hàng đạn, gọi "bạc đạn đôi". Cái này ngày xưa rất hiếm, nếu bạc cần chịu lực thì người ta dùng kim và gọi là "bạc kim" (pin bearing hay roller bearing). Nếu cần chịu cả lực đẩy thì hai cái vòng hơi côn một chút, "bạc kim côn" (tapered roller bearing).

Ba vớ là cái bìa cạnh sắc lòi ra khi bạn cắt, mài kim loại. Từ này là do tiếng Pháp: bavure (tiếng Anh burr).
Hàng kim loại cắt ra thì thường phải qua công đoạn mài/giũa ba vớ để tránh đứt tay. Tiếng Anh là deburr.
Lưu ý rằng lấy ba vớ khác với vạt cạnh. Vạt là mài luôn một góc 45 độ để tạo chỗ thoát giữa các cơ phận ráp sát nhau.

Tôi vào trường Kỹ Sư Phú Thọ (bây giờ là BK TpHCM) trước khi thống nhất. Từ ngữ kỹ thuật tôi học là 100% tiếng Nam. Sau thống nhất thì có đến phân nửa giáo viên giảng dạy từ Bắc vào cho nên các khoá đàn em tôi dùng đến hơn 50% từ kỹ thuật theo Bắc.

Chú: tôi không rõ với "vòng bi" thì từ "bi" căn bản từ đâu. Có lẽ do tiếng Pháp "bille" (đạn/bi). Tiếng Pháp gọi bạc đạn là "roulement à billes"
 
Lần chỉnh sửa cuối:
Upvote 0
Chào các anh chị!!!
Em đưa file, mong các anh chị giúp cho khi chọn khách hàng ở Validation trong C2 trong sheet!Xem thì lọc ra tổng tồn đầu,, tổng nhập,tổng xuất, và tổng tồn cuối của các mã hàng của khách hàng đó,như trong file em có ví dụ 2 mã hàng.
Chào bạn. Tôi có làm thử một bài bạn xem có được không nhé.
 

File đính kèm

Upvote 0
Ba vớ là cái bìa cạnh sắc lòi ra khi bạn cắt, mài kim loại.
Như tôi nói, cho tới khi viết bài kia, tôi không biết chính xác ba vớ là cái quái gì.

Nhưng hồi ấy tôi đã phải đọc đi đọc lại bản gốc để rồi dựa vào ngữ cảnh, vào những đoạn sau đó và đoán mò là những phần "lởm chởm, nhấp nhô" có trên bề mặt vật gia công thì gọi là ba vớ. Tức tôi không hiểu là "cạnh sắc". Bởi "cạnh sắc" là cạnh sắc. Giả dụ sau khi khoan một lỗ trên tấm kim loại thì ở bề mặt của tấm kim loại sẽ có, trên toàn bộ chu vi "vành lỗ khoan", một "vòng nhấp nhô, lởm chởm". Và tôi đoán mò đó là ba vớ. Bây giờ ta mài trơn bề mặt để nó trơn phảng đi, và mài tiếp lỗ khoan cho trơn phẳng đi. Lúc đó giao của mặt trụ và mặt phẳng là đường tròn rất sắc. Tức cạnh của lỗ khoan rất sắc *. Nếu cái cạnh rất sắc nhưng phẳng phiu này mới là ba vớ thì tôi đã hiểu sai. Ba vớ tôi đoán mò là cái "cạnh lởm chởm của lỗ khoan" ** mà ta đã mài trơn đi. Sau khi mài trơn thì cái ba vớ của tôi không còn nữa.

* về lý thuyết thì cạnh của 2 nửa mặt phẳng cắt nhau dưới góc <= 90° rất sắc.

* nói chính xác thì tôi hiểu ba vớ là phần "lởm chởm, nhấp nhô" xuất hiện trên bề mặt trong quá trình gia công
 
Upvote 0
... Giả dụ sau khi khoan một lỗ trên tấm kim loại thì ở bề mặt của tấm kim loại sẽ có, trên toàn bộ chu vi "vành lỗ khoan", một "vòng nhấp nhô, lởm chởm". Và tôi đoán mò đó là ba vớ. Bây giờ ta mài trơn bề mặt để nó trơn phảng đi, và mài tiếp lỗ khoan cho trơn phẳng đi. Lúc đó giao của mặt trụ và mặt phẳng là đường tròn rất sắc. Tức cạnh của lỗ khoan rất sắc *. Nếu cái cạnh rất sắc nhưng phẳng phiu này mới là ba vớ thì tôi đã hiểu sai. Ba vớ tôi đoán mò là cái "cạnh lởm chởm của lỗ khoan" ** mà ta đã mài trơn đi. Sau khi mài trơn thì cái ba vớ của tôi không còn nữa.
...
Trong công đoạn lỗ khoan thì phần nhiều ba vớ nhất sẽ nằm ở mặt kia, lúc lưỡi khoan đi suốt qua thì nó sẽ đẩy lớp cuối thành ba vớ. Mặt vào cũng có ba vớ nhưng ít hơn. Thường thì cách lấy ba vớ là dùng một lưỡi phay côn dí nhẹ vào. Thủ công thì dùng một cái dũa ngoáy xéo góc.
Tiếng dịch gần nhất cho ba vớ có lẽ là "gai cạnh".

Công đoạn cưa, cắt, dập cũng tạo ra ba vớ. Chính công đoạn bào, mài thô cũng có ba vớ.

Vạt cạnh: ở góc 90 độ thì góc lồi (vuông là cạnh thỏi, tròn là đầu trục) dễ tạo hoàn chỉnh. Nhưng góc lõm (vuông là góc, và tròn là đáy lỗ) thì rất khó có chỗ thoát lưỡi bào, lưỡi phay (đáy lỗ khoan là 120 độ; nhưng đáy lỗ phay là phẳng, góc 90). Góc lõm vuông xảy ra khi món đồ cần tiện rãnh. Và nếu không hoàn chỉnh thì khi ráp vào sẽ bị "cấn" (trừ phi bên lõm sâu hơn bên lồi). Cho nên cách giải quyết dễ nhất là vạt cạnh 45% bên lồi.
Việc trục ráp vào lỗ thì có hai cách giải quyết:
- Cách thứ nhất là vạt cạnh lỗ.
- Khi cần phải kín cạnh lỗ thì không thể vạt cạnh. Người ta tiện một vòng ngay cổ trục. Cách này dễ và đẹp nhưng có cái bất lợi là nó gây nên điểm tụ stress nơi cổ trục. Tiếng chuyên môn gọi là stress concentration, làm yếu cổ trục.
Nếu không do nhu cầu ráp thì việc vạt cạnh là để tránh cạnh sắc của chính góc cạnh (khong phải do ba vớ). Cũng có khi ngừoi ta làm tròn, gọi là bo. Chẳng biết từ này ở đâu ra.
 
Upvote 0
Từ 'ba zớ' cũng dành chỉ đến con người, coi như thằng (cha) hay con (mẹ) đó là thứ bỏ đi/qua (?)
Từ này cũng nói đến vấn đề nào đó, như đó là chuyện 'ba zớ' ý mà!

@Chủ bài đăng: Tại trang tính 'Xem' bạn đang dư 1 cột 'DVT' thì phải; Thay vì như vậy, bạn chì cần 1 ô để ghi DVT là đủ
 
Lần chỉnh sửa cuối:
Upvote 0
Các anh chị ơi!!!
Sao code của bạn @vanaccex chạy bị sai, mong các anh chị sửa dùm em ạ.
Trong file, ở sheet!Xem khi em chọn khách hàng là "MORE" trong C2, thì code chạy đúng,nhưng khi em chọn khách hàng là "TS14" ở C2,thì code chạy sai, đó là mã hàng "MOR5952" có Stt là 4, mã hàng này là của khách hàng "MORE" vậy mà chạy qua khách hàng "TS14"mà chỉ có xuất là "5269", còn đúng của khách hàng "MORE"thì mã hàng "MOR5952" có tồn là 5271.7" và xuất là "5269" và tồn cuối là "2.7", mã hàng này em có bôi màu ở sheet!TonDau, và sheet!Xuat.
Mong các anh chị giúp em sửa sai.
 

File đính kèm

Upvote 0
/(ết quả từ #28:


DòngTồn cuốiSL Xuất
Trang TonDau207
502.4​
Trang Nhap0
Trang xuất4
99.2​
20
45​
21
102.1​
Trang 'Xem':Tồn đầuNhậpXuất
136
502.4​
246.3​
 
Upvote 0
Bác SA_DQ coi file của #35 em gửi đó, file này em đã chỉnh SL của Sheet!TonDau.
 
Upvote 0
Mình đưa các macro cha & các con của mình vô file bài 35 thì có kết quả như sau:
Trang 'Xem' STT 81 SL Xuất là 5269

Khi đó ở trang 'Xuát' của file có 2 dòng kết quả như sau:
(1) Dòng có STT 15 (Khách hàng TS14) xuất 5269
(2) Dòng có STT 230 (Khách hàng là MORE) cũng xuất 5269

Mình cho rằng số liệu do macro cha & các con của mình chạy đang đúng;
(Vì mình cho rằng khi chạy với khách hàng TS14 thì không lấy số liệu ở (2))

Cần nói thêm rằng ở trang 'TonDau' chỉ có 1 dòng dữ liệu (có STT là 223, nhưng của khách hàng MORE; Hiễn nhiên không thể lấy dòng này vô là tồn đầu của KH TS14 được!

STTMã HàngĐvtSL Tồn ĐầuSL NhậpSL Xuất
68​
PO30495Mts
2400​
2347.2​
69​
PO29720BMts
13112​
656​
70​
PO31119Mts
2794​
71​
PO31600Mts
553​
72​
PO31120Mts
2948​
73​
PO31597Mts
1786​
74​
PO31478Mts
2625​
75​
PO31505Mts
8684​
76​
PO24202Mts
7847​
5242​
77​
PO23147BMts
6481​
4587​
78​
PO22396BMts
3569.4​
1667​
79​
PO26303Mts
2436​
2353​
80​
PO26461Mts
152​
19.61​
81
MOR5952Mts
5269
82​
PO26265Mts
555​
539​
83​
PO23812BMts
33916​
32859​
84​
PO26282Mts
2339​
2288​
 
Lần chỉnh sửa cuối:
Upvote 0
À, xin lỗi Bác SA_DQ, em biết là sai ở sheet!Xuat mà em lại không dò ra dòng có Stt 15.
Cám ơn Bác SA_DQ nhiều.
 
Upvote 0
À, xin lỗi Bác , em biết là sai ở sheet!Xuat mà em lại không dò ra dòng có Stt 15.
Cám ơn Bác SA_DQ nhiều.
Mình dò theo cột mã hàng bỡi phương thức FIND() trên menu
 
Upvote 0
Bác SA_DQ ơi, em muốn xem theo mã hàng cộng Màu theo khách hàng thì chỉnh code sao Bác SA_DQ?
 
Upvote 0
Bác ơi, em muốn xem theo mã hàng cộng Màu theo khách hàng thì chỉnh code sao Bác?
Thực ra mình chưa chắc đã hiểu đúng ý của bạn:
Hoặc: (1) Thay vì tại cột C của trang 'Xem' tại [C4] đang là [ĐVT] thay lả [Màu] (chuyện này dễ à nha!)
Hoặc (2) Thay vì chỉ chọn tại [C2] là khách hàng, ta phải chọn thêm (ở [C3]) là 1 trong danh sách màu xổ xuống?

Nói luôn trường hợp (1)
Ta đến macro con có tên là
Mã:
Sub TaoDSMaHang(ShName As String)
'. . . . . .   '
  KQ(W, 3) = Arr(J, 4)      
'. . . . . . . . .     '
End Sub
& sửa con 4 lại thành con 3 là gần được (99%) theo iêu cầu!

Còn trường hợp (2): Viết lại toàn bộ các tác phẩm mà bạn đang cho là đang đúng dữ liệu !
 
Upvote 0
Dạ không phải ạ, ý em là khi chọn khách hàng ở C2 thì lọc theo khách hàng và màu luôn, vì dụ chọn khách hàng "More" thì mã hàng MOR5859 sẽ hiện ra chi tiết nhập xuất tồn của các màu: BLACK, CHOCOLATE, NAVY, IVORY, STONE, GREY luôn ạ, tức là bảng ở sheet!Xem sẽ thêm cột màu nữa ạ.
 
Upvote 0
Dạ, ý em là khi chọn khách hàng ở C2 thì lọc theo khách hàng và màu luôn, vì dụ chọn khách hàng "More" thì mã hàng MOR5859 sẽ hiện ra chi tiết nhập xuất tồn của các màu: BLACK, CHOCOLATE, NAVY, IVORY, STONE, GREY luôn ạ, tức là bảng ở sheet!Xem sẽ thêm cột màu nữa ạ.
Bạn luyến tiếc cái chi mà không thể thay cái cột [ĐVT] vô tích sự đó thành [Màu] cho rồi chuyện!
Chuyện như trở bàn tay không làm mà nhào vô bụi rậm là thích, sao?
Hay bạn thích thêm 7 cột màu theo 7 sắc cầu vòng cho đã nư?

Chọn Khách HàngFASH
1,123.40​
33,898.40​
0.00​
35,021.80​
STTMã HàngMàuSL Tồn ĐầuNhậpSL SL XuấtSL Tồn Cuối
1​
B18106-FIBEIGE
1123.4​
1,123.40​
2​
BM18-111002AUBERGINE
3349.7​
7,247.70​
3​
B18122-FIGREY
7247.7​
3,489.50​
4​
QS-18077BLACK
1448.9​
1,184.50​
5​
HD2-11021WHITE
4171.5​
3,349.70​
6​
QS-18069BLACK
1984.7​
4,171.50​
7​
QS-18070BLACK CHECK
3043.8​
1,984.70​
8​
BM15-03935APRICOT
1184.5​
3,043.80​
9​
QS-19092DENIM/BLUE
3338​
1,448.90​
10​
B19080-FIBEIGE
3489.5​
1,000.60​
11​
QS-19059PLUM
1000.6​
3,338.00​
12​
QS-19127GREY
1792.5​
1,792.50​
13​
QS-19128GREY CHECK
1847​
1,847.00​
 
Lần chỉnh sửa cuối:
Upvote 0

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

Back
Top Bottom