EXCEL TOOLS
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
[code]
และปิดด้วย [/code]
ตัวอย่างเช่น [code]dim r as range[/code]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)Code: Select all
Dim intRows As Integer
Dim dDate As Date
Private Sub Cblist_Change()
End Sub
Private Sub Cmb2_Click()
CbList.Text = ""
TbDate.Text = ""
TbRc.Text = ""
TbStk.Text = ""
TbSO.Text = ""
TbSh.Text = ""
End Sub
Private Sub Cmb3_Click()
Windows(1).Activate
ActiveWorkbook.SaveAs Filename:= _
"D:\BackpackGiant\BPGA_JOB1cp.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled
ActiveWorkbook.Close
End Sub
Private Sub Cmb1_Click()
'Check Blank TextBox.
If CbList.Value = blank Then MsgBox "Fill in missing data.?"
If TbDate.Text = blank Then MsgBox "Fill in missing data.?"
'If TbRc.Text = blank Then MsgBox "Fill in missing data.?"
'If TbStk.Text = blank Then MsgBox "Fill in missing data.?"
'If TbSO.Text = blank Then MsgBox "Fill in missing data.?"
'If TbSh.Text = blank Then MsgBox "Fill in missing data.?"
intRows = LastRow + 1
Cells(intRows, 1).Value = TbDate.Text
Cells(intRows, 2).Value = CbList.Value
Cells(intRows, 3).Value = TbRc.Text
Cells(intRows, 4).Value = TbSO.Text
Cells(intRows, 5).Value = TbStk.Text
Cells(intRows, 6).Value = TbSh.Text
intRows = intRows + 1
TbDate.Text = ""
CbList.Value = ""
TbRc.Text = ""
TbSO.Text = ""
TbStk.Text = ""
TbSh.Text = ""
End Sub
Private Sub TbDate_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
'Dim dDate As Date
today = Date
'dDate = DateSerial(Year(Date), Month(Date), Day(Date))
TbDate.Value = Format(TbDate.Value, "dd/mm/yyyy")
dDate = TbDate.Value
TbDate.Value = Date
End Sub
Code: Select all
Private Sub UserForm_Initialize()
Me.TbDate.Value = Application.Text(Date, "mm/dd/yyyy")
End Sub
Code: Select all
Private Sub TbDate_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
'Dim dDate As Date
today = Date
'dDate = DateSerial(Year(Date), Month(Date), Day(Date))
TbDate.Value = Format(TbDate.Value, "dd/mm/yyyy")
dDate = TbDate.Value
TbDate.Value = Date
End Sub
snasui wrote: ตัวอย่างการใส่ Code ใน TextBox tbDate ตามด้านล่างครับ
Code: Select all
Private Sub UserForm_Initialize() Me.TbDate.Value = Application.Text(Date, "mm/dd/yyyy") End Sub
Code: Select all
Private Sub TbDate_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
'Dim dDate As Date
today = Date
'dDate = DateSerial(Year(Date), Month(Date), Day(Date))
TbDate.Value = Format(TbDate.Value, "dd/mm/yyyy")
dDate = TbDate.Value
TbDate.Value = Date
End Sub
ในsnasui wrote:ขอบคุณครับ ได้อย่างที่ต้องการเลยครับ แต่ว่าหลังผมกด ตกลง(done) เพื่อ กรอกข้อมูล ไปในครั้งแรก วันที่ก็หายไปเลยครับ ให้มันค้างไว้จนจบเลยได้ไหมครับ
Sub Cmb1_Click()
ลบบรรทัดนี้ทิ้งไปครับ TbDate.Text = ""
snasui wrote:ในsnasui wrote:ขอบคุณครับ ได้อย่างที่ต้องการเลยครับ แต่ว่าหลังผมกด ตกลง(done) เพื่อ กรอกข้อมูล ไปในครั้งแรก วันที่ก็หายไปเลยครับ ให้มันค้างไว้จนจบเลยได้ไหมครับSub Cmb1_Click()
ลบบรรทัดนี้ทิ้งไปครับTbDate.Text = ""
ขอบคุณครับsnasui wrote: ควรจะมีการ Validate หมายถึงตรวจสอบความสมบูรณ์ของข้อมูลที่จำเป็นว่าถูกต้องและมีครบทุกช่อง หากมีไม่ครบทุกช่อง หรือ มีครบแต่ไม่อยู่ในรูปแบบที่กำหนดจะต้องไม่วางลงไปในพื้นที่เป้าหมาย สำหรับการ Validate ให้ลองเขียนมาเองก่อน ติดแล้วค่อยถามกันต่อครับ