Hoàn thiện code nhập liệu

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

yome

GPE thật tuyệt vời
Tham gia
9/5/08
Bài viết
347
Được thích
113
Chào cả nhà GPE!
Em có 1 file này em đã viết code cho nó chạy rồi. Nhưng giờ có 1 vấn đề nho nhỏ em muốn nhờ các anh/chị sửa thêm dùm em.
Cụ thể là: Em đã tạo form nhập liệu rồi. Giờ em muốn khi nhập liệu thì những ô nào bỏ trống (không nhâp) thì khi chọn mục GHI thì nó tự động cập nhật dấu "//" vào cell tương ứng.
Cám ơn anh/chị nhiều!
 

File đính kèm

Chào cả nhà GPE!
Em có 1 file này em đã viết code cho nó chạy rồi. Nhưng giờ có 1 vấn đề nho nhỏ em muốn nhờ các anh/chị sửa thêm dùm em.
Cụ thể là: Em đã tạo form nhập liệu rồi. Giờ em muốn khi nhập liệu thì những ô nào bỏ trống (không nhâp) thì khi chọn mục GHI thì nó tự động cập nhật dấu "//" vào cell tương ứng.
Cám ơn anh/chị nhiều!

Thử code sau nhé.
Mã:
Private Sub CommandButton1_Click()
Dim iRow As Long
Dim ws As Worksheet
Dim i As Integer
Set ws = Worksheets("Data")
iRow = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
  If Trim(Me.TextBox1.Value) = "" Then
  Me.TextBox1.SetFocus
  MsgBox "Ma nhan vien khong duoc de trong ", vbCritical + vbOKOnly
  Exit Sub
End If
With ws
    For i = 1 To 7
      If Me.Controls("TextBox" & i) = "" Then
         Me.Controls("TextBox" & i).Text = "//"
      End If
         .Cells(iRow, i) = Me.Controls("TextBox" & i)
         .Cells(iRow, 7) = Val(Format(Me.TextBox7, "0"))
       
         Me.Controls("TextBox" & i) = ""
    Next
End With
Me.TextBox1.SetFocus

End Sub
 

File đính kèm

Upvote 0
Chào cả nhà GPE!
Em có 1 file này em đã viết code cho nó chạy rồi. Nhưng giờ có 1 vấn đề nho nhỏ em muốn nhờ các anh/chị sửa thêm dùm em.
Cụ thể là: Em đã tạo form nhập liệu rồi. Giờ em muốn khi nhập liệu thì những ô nào bỏ trống (không nhâp) thì khi chọn mục GHI thì nó tự động cập nhật dấu "//" vào cell tương ứng.
Cám ơn anh/chị nhiều!
Dể mà bạn! Chỉ If 1 cái là xong chứ gì
Ví dụ bạn viết rằng:
PHP:
With ws
  .Cells(iRow, 1) = Me.TextBox1
  ...
End With
Thì sửa lại thành:
PHP:
With ws
  .Cells(iRow, 1) = IIf(Me.TextBox1 = "", "//", Me.TextBox1)
  ....
End With
 
Upvote 0
Thử code sau nhé.
Mã:
Private Sub CommandButton1_Click()
Dim iRow As Long
Dim ws As Worksheet
Dim i As Integer
Set ws = Worksheets("Data")
iRow = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
If Trim(Me.TextBox1.Value) = "" Then
Me.TextBox1.SetFocus
MsgBox "Ma nhan vien khong duoc de trong ", vbCritical + vbOKOnly
Exit Sub
End If
With ws
For i = 1 To 7
If Me.Controls("TextBox" & i) = "" Then
Me.Controls("TextBox" & i).Text = "//"
End If
.Cells(iRow, i) = Me.Controls("TextBox" & i)
.Cells(iRow, 7) = Val(Format(Me.TextBox7, "0"))
 
Me.Controls("TextBox" & i) = ""
Next
End With
Me.TextBox1.SetFocus
 
End Sub

Anh ơi, anh xem dùm cho em sao code của em làm vần sai ở cho nào đó mà không chạy được.
(file đính kèm nhé)
 

File đính kèm

Upvote 0
Anh ơi, anh xem dùm cho em sao code của em làm vần sai ở cho nào đó mà không chạy được.
(file đính kèm nhé)
-Sửa lại Name của bạn từ 3 cột thành 6 cột (A:C) thành (A:F)
-Chỉnh Column count của Combo từ 3 thành 6
 
Upvote 0
Viết dùm code cho form nhập liệu

Chào cả nhà GPE!
Em đã thiết kế xong biểu mẫu NHAT KY CHUNG rồi. Giờ em muốn tạo Form để nhập liệu (em đã tạo xong Form) nhưng vẫn chưa viết được code xong cho nó chạy.
Vậy qua GPE, em muốn nhờ các anh/chị viết dùm cho em đoạn code cho nó chạy nhé!
Em cám ơn nhiều!
 

File đính kèm

Upvote 0
Chào cả nhà GPE!
Em đã thiết kế xong biểu mẫu NHAT KY CHUNG rồi. Giờ em muốn tạo Form để nhập liệu (em đã tạo xong Form) nhưng vẫn chưa viết được code xong cho nó chạy.
Vậy qua GPE, em muốn nhờ các anh/chị viết dùm cho em đoạn code cho nó chạy nhé!
Em cám ơn nhiều!

Thêm cái này

PHP:
Private Sub OptionButton1_Click()
    Me.ComboBox4.Visible = False
    Me.TextBox8.Visible = False
    Me.ComboBox1.Visible = True
    Me.TextBox5.Visible = True
    Me.Label10.Visible = False
    Me.Label7.Visible = True
End Sub
   
Private Sub OptionButton2_Click()
    Me.ComboBox4.Visible = True
    Me.TextBox8.Visible = True
    Me.ComboBox1.Visible = False
    Me.TextBox5.Visible = False
    Me.Label10.Visible = True
    Me.Label7.Visible = False
End Sub
Private Sub UserForm_Initialize()
    Me.OptionButton1.Value = True
End Sub

Nút Ghi bạn tự làm nhé trên DĐ nói nhiều rồi

Thân
 
Upvote 0
Thêm cái này

PHP:
Private Sub OptionButton1_Click()
Me.ComboBox4.Visible = False
Me.TextBox8.Visible = False
Me.ComboBox1.Visible = True
Me.TextBox5.Visible = True
Me.Label10.Visible = False
Me.Label7.Visible = True
End Sub

Private Sub OptionButton2_Click()
Me.ComboBox4.Visible = True
Me.TextBox8.Visible = True
Me.ComboBox1.Visible = False
Me.TextBox5.Visible = False
Me.Label10.Visible = True
Me.Label7.Visible = False
End Sub
Private Sub UserForm_Initialize()
Me.OptionButton1.Value = True
End Sub

Nút Ghi bạn tự làm nhé trên DĐ nói nhiều rồi

Thân

Anh ơi, anh thiết kê luôn dùm em với nhé!
 
Upvote 0
Viết dùm code cập nhật dữ liệu!

Chào cả nhà GPE!
Em có 1 file đã thiết kế sẵn mẫu. Em nhờ các anh/chị viết dùm em code cập nhật dữ liệu.
Câu hỏi cụ thể em đã viết sẵn trong file đính kèm.
Cám ơn anh/chị nhiều!
 

File đính kèm

Upvote 0
Bạn tham khảo nha bạn lưu ý thừa 1 ô textbox
 

File đính kèm

Upvote 0
Bạn tham khảo nha bạn lưu ý thừa 1 ô textbox

Anh ơi, sao khi mình nhập liệu vào FORM rồi và chọn nút Cập nhật thì dữ liệu đã cập nhật rồi. Và em muốn nhập nghiệp vụ phát sinh nữa sao dữ liệu cũ vẫn còn ở FORM mà nó không tự xoá đi. Anh sửa dùm em code nhé!
Thanks!
 
Upvote 0
Nói chung, mình mới cơ bản nhạp dữ liệu vào thôi, bạn phải bổ xung việc:
-Kiểm tra dữ liệu trước khi nhập
-Đổi dữ liệu dạng ngày tháng sang ngày tháng, số sang dạng số
 

File đính kèm

Upvote 0
Nói chung, mình mới cơ bản nhạp dữ liệu vào thôi, bạn phải bổ xung việc:
-Kiểm tra dữ liệu trước khi nhập
-Đổi dữ liệu dạng ngày tháng sang ngày tháng, số sang dạng số

Anh ơi, em định dạng số trên FORM được rồi nhưng sao khi cập nhật nó lại không cập nhật đúng?
PHP:
Private Sub TextBox6_Change()
TextBox6 = Format(Format(TextBox6, "0"), "#,##0")
End Sub
Private Sub TextBox7_Change()
TextBox7 = Format(Format(TextBox7, "0"), "#,##0")
End Sub
Anh kiểm tra dùm em nhé!
Thanks!
 
Upvote 0
Khi cập nhật bạn phải viết

.Cells(xx,yy)=Val(Format(TextBox7, "0"))
 
Upvote 0
Khi cập nhật bạn phải viết

.Cells(xx,yy)=Val(Format(TextBox7, "0"))

Em không hiểu lắm!
Cụ thể trong code này thì minh phải sửa như thế nào nữa hả anh:
PHP:
Private Sub CommandButton1_Click()
Dim i, j As Integer
Dim dg As Long
With Sheet2
For i = 1 To 2
dg = .[b56536].End(xlUp).Row + 1
.Cells(dg, 1).Value = Format(Me.TextBox1.Value, "DD/MM/YYYY")
.Cells(dg, 2) = Me.TextBox2
.Cells(dg, 3).Value = Format(Me.TextBox3.Value, "DD/MM/YYYY")
.Cells(dg, 4) = Me.TextBox4
'.Cells(dg, 5) = IIf(Me.OptionButton1, Me.ComboBox1, Me.Controls("Combobox" & 1 + i))
.Cells(dg, 6) = IIf(Me.OptionButton1, Me.ComboBox1, Me.Controls("Combobox" & 1 + i))
.Cells(dg, 7) = IIf(Me.OptionButton1, Me.Controls("Combobox" & 1 + i), Me.ComboBox1)
.Cells(dg, 8) = Val(Me.Controls("Textbox" & 5 + i))
.Cells(dg, 9) = Val(Me.Controls("Textbox" & 5 + i))
Next
End With
With Me
For i = 2 To 8
If i <> 5 Then .Controls("TextBox" & i).Text = ""
Next
For i = 1 To 3
.Controls("Combobox" & i).Text = ""
Next
.TextBox1.SetFocus
End With
End Sub
Anh sửa luôn dùm em nhé!
 
Upvote 0
Bạn làm như sau:

Mã:
Private Sub CommandButton1_Click()
Dim i, j As Integer
Dim dg As Long
With Sheet2
For i = 1 To 2
dg = .[b56536].End(xlUp).Row + 1
.Cells(dg, 1) = DateSerial(Right(Me.TextBox1, 4), Mid(Me.TextBox1, 4, 2), Left(Me.TextBox1, 2))
.Cells(dg, 2) = Me.TextBox2
.Cells(dg, 3) = DateSerial(Right(Me.TextBox3, 4), Mid(Me.TextBox3, 4, 2), Left(Me.TextBox3, 2))
.Cells(dg, 4) = Me.TextBox4
'.Cells(dg, 5) = IIf(Me.OptionButton1, Me.ComboBox1, Me.Controls("Combobox" & 1 + i))
.Cells(dg, 6) = IIf(Me.OptionButton1, Me.ComboBox1, Me.Controls("Combobox" & 1 + i))
.Cells(dg, 7) = IIf(Me.OptionButton1, Me.Controls("Combobox" & 1 + i), Me.ComboBox1)
.Cells(dg, 8) = Val(Format(Me.Controls("Textbox" & 5 + i), "0"))
.Cells(dg, 9) = Val(Format(Me.Controls("Textbox" & 5 + i), "0"))
Next
End With
With Me
For i = 2 To 8
If i <> 5 Then .Controls("TextBox" & i).Text = ""
Next
For i = 1 To 3
.Controls("Combobox" & i).Text = ""
Next
.TextBox1.SetFocus
End With
End Sub
 
Upvote 0
Để bỏ qua những dòng không phát sinh ta thêm đoạn code kiểm tra như sau:
.........................
For i = 1 To 2
If Me.ComboBox1 = "" Or Me.Controls("Combobox" & 1 + i) = "" Or Me.Controls("Textbox" & 5 + i) = "" Then GoTo boqua
.........................
next

Cụ thể:

PHP:
Private Sub CommandButton1_Click()
Dim i, j As Integer
Dim dg As Long
With Sheet2
For i = 1 To 2
If Me.ComboBox1 = "" Or Me.Controls("Combobox" & 1 + i) = "" Or Me.Controls("Textbox" & 5 + i) = "" Then GoTo boqua
dg = .[b56536].End(xlUp).Row + 1
.Cells(dg, 1) = DateSerial(Right(Me.TextBox1, 4), Mid(Me.TextBox1, 4, 2), Left(Me.TextBox1, 2))
.Cells(dg, 2) = Me.TextBox2
.Cells(dg, 3) = DateSerial(Right(Me.TextBox3, 4), Mid(Me.TextBox3, 4, 2), Left(Me.TextBox3, 2))
.Cells(dg, 4) = Me.TextBox4
.Cells(dg, 6) = IIf(Me.OptionButton1, Me.ComboBox1, Me.Controls("Combobox" & 1 + i))
.Cells(dg, 7) = IIf(Me.OptionButton1, Me.Controls("Combobox" & 1 + i), Me.ComboBox1)
.Cells(dg, 8) = Val(Format(Me.Controls("Textbox" & 5 + i), "0"))
.Cells(dg, 9) = Val(Format(Me.Controls("Textbox" & 5 + i), "0"))
boqua:
Next
End With
With Me
For i = 2 To 8
If i <> 5 Then .Controls("TextBox" & i).Text = ""
Next
For i = 1 To 3
.Controls("Combobox" & i).Text = ""
Next
.TextBox1.SetFocus
End With
End Sub
 
Upvote 0
Web KT

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

Back
Top Bottom