Đinh Xuân Mạnh
Đinh Xuân Mạnh
Thảo luận 14 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 137 lượt xem

chỗ này e dùng do while có gì sai ko ạ? mà sao sửa hoải vẫn lỗi

thầy cho em hỏi chỗ này e dùng do while có gì sai ko ạ? mà sao sửa hoải vẫn lỗi.


Thảo luận 14 câu trả lời
Lượt xem 137 lượt xem
Vỗ tay vỗ tay
Đinh Xuân Mạnh 14:12 - Dec 29, 2020
chào bạn ở đây bạn muốn i chạy liên tục thì dù điều kiện đúng hay sai i=i+1 thì mới đúng được
Vỗ tay vỗ tay
Đinh Xuân Mạnh 11:01 - Jan 11, 2021
Đinh Xuân Mạnh 11:01 - Jan 11, 2021

Chào bạn bạn cho mình xin quyền truy cập vào file nhé

Vỗ tay vỗ tay
Đinh Xuân Mạnh 08:01 - Jan 12, 2021

chào thầy. thầy thử vào lại link này xem sao ạ. e tưởng chỉ cần share link là ok chứ nhỉ

https://drive.google.com/file/d/1POkR...

Vỗ tay vỗ tay
Đinh Xuân Mạnh 09:01 - Jan 12, 2021

Chào bạn bạn cần để link ở chế độ mọi người xem mình mới vào được bạn nhé.

Vỗ tay vỗ tay
Đinh Xuân Mạnh 09:01 - Jan 13, 2021

thầy xem lại link này hộ em nhé

https://drive.google.com/file/d/1POkR...

Vỗ tay vỗ tay
Đinh Xuân Mạnh 10:01 - Jan 13, 2021

Chào bạn bạn thay đoạn code sau nhé:

Private Sub cb_TenHang_Change()
    Dim Ten As String
    Ten = Me.cb_TenHang.Value
    Dim i As Integer
    i = 3
    If Ten <> "" Then
        Do While i < 100
            If Ten = Sheets("DS_Hang").Range("A" & i).Value Then
                Me.tb_DonVi.Value = Sheets("DS_Hang").Range("B" & i).Value
                Me.tb_DonGia.Value = Sheets("DS_Hang").Range("C" & i).Value
            End If
                i = i + 1
            Loop
                
    Else
        Me.tb_DonVi.Value = ""
        Me.tb_DonGia.Value = 0
    End If
    If Me.tb_SoLuong <> "" And Me.tb_DonGia <> "" Then
        Me.tb_ThanhTien = Me.tb_SoLuong * Me.tb_DonGia
        Else
        Me.tb_ThanhTien = 0
    End If
End Sub
Vỗ tay vỗ tay
Đinh Xuân Mạnh 15:01 - Jan 13, 2021

Chào thầy. nhưng nếu viết như vậy thì tác dụng cũng giống như vòng lặp For.... next. và khi nhập sai tên ko nằm trong danh sách tên hàng mà bấm lưu thì vẫn lưu như bình thường ạ.

ý em muốn là khi mình vô tình nhập tên bằng tay ko đúng với tên hàng thì phải hiện thông báo là mình nhập sai tên cơ

Vỗ tay vỗ tay
Đinh Xuân Mạnh 15:01 - Jan 13, 2021

tiên thể cho em hỏi luôn là trong phần bài giảng. mình cũng sử dụng vòng lặp do while và để else trước sau đó mới để i = i+1 vậy sao code chạy lại ko bị lỗi vậy. và sau Loop là mình để Msgbox mà..

Vỗ tay vỗ tay
Đinh Xuân Mạnh 16:01 - Jan 13, 2021

Chào bạn vạy bạn bắt lỗi khi lưu nhé:

Private Sub cmb_Luu_Click()
    Dim DongCuoi As Long
    DongCuoi = Sheets("data").Range("A" & Rows.Count).End(xlUp).Row + 1
    If Me.cb_TenHang.Value = "" Then
        MsgBox ("Ban Chua Nhap Ten Hang")
        Exit Sub
        ElseIf Me.tb_SoLuong.Value = "" Then
            MsgBox ("Ban Chua Nhap So Luong")
            Exit Sub
            
         ElseIf Me.tb_DonVi.Value = "" Then
            MsgBox ("ban chua chon ma hang")
            Exit Sub
            
        Else
            Sheets("data").Range("A" & DongCuoi).Value = Me.cb_TenHang.Value
            Sheets("data").Range("B" & DongCuoi).Value = Me.tb_DonVi.Value
            Sheets("data").Range("C" & DongCuoi).Value = Me.tb_SoLuong.Value
            Sheets("data").Range("D" & DongCuoi).Value = Me.tb_DonGia.Value
            Sheets("data").Range("E" & DongCuoi).Value = Me.tb_ThanhTien.Value
            Unload Me
            uf_Nhap.Show
        End If
        
End Sub

Vỗ tay vỗ tay
Đinh Xuân Mạnh 14:01 - Jan 14, 2021

ko đc thầy ạ. e nhập đúng như vậy. trường hợp mình nhập tên sai vẫn lưu đc

Vỗ tay vỗ tay
Đinh Xuân Mạnh 14:01 - Jan 14, 2021

Chào bạn bạn xem file sau nhé:

https://drive.google.com/file/d/1J1Rc...

Vỗ tay vỗ tay
Đinh Xuân Mạnh 15:01 - Jan 14, 2021

vẫn vậy mà thầy ạ

Vỗ tay vỗ tay
Đinh Xuân Mạnh 15:01 - Jan 14, 2021

Chào bạn bạn thêm dòng code này nhé

Private Sub cmb_Luu_Click()
    Dim DongCuoi As Long, i As Long
    DongCuoi = Sheets("data").Range("A" & Rows.Count).End(xlUp).Row + 1
    If Me.cb_TenHang.Value = "" Then
        MsgBox ("Ban Chua Nhap Ten Hang")
        Exit Sub
        ElseIf Me.tb_SoLuong.Value = "" Then
            MsgBox ("Ban Chua Nhap So Luong")
            Exit Sub
            
         ElseIf Me.tb_DonVi.Value = "" Then
            MsgBox ("ban chua chon ma hang")
            Exit Sub
            
        Else
                
            Dim dc As Long
            dc = Sheet1.Range("A" & Sheet1.Rows.Count).End(xlUp).Row
            For i = 3 To dc
                If (Sheet1.Range("A" & i) = cb_TenHang.Text) Then
                    Sheets("data").Range("A" & DongCuoi).Value = Me.cb_TenHang.Value
                    Sheets("data").Range("B" & DongCuoi).Value = Me.tb_DonVi.Value
                    Sheets("data").Range("C" & DongCuoi).Value = Me.tb_SoLuong.Value
                    Sheets("data").Range("D" & DongCuoi).Value = Me.tb_DonGia.Value
                    Sheets("data").Range("E" & DongCuoi).Value = Me.tb_ThanhTien.Value
                    Unload Me
                    uf_Nhap.Show
                End If
            Next i
           
        End If
        
        
End Sub
Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông