Excel User Form สร้างฟอร์มกรอกข้อมูล | PART#8 ใส่ข้อมูลวันที่ด้วย Date Picker

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ก.ย. 2024
  • #Datepickervba #datepickerformexcel
    PART #1 เริ่มต้นสร้างฟอร์ม คลิกลิงค์ ด้านล่าง
    • Excel : EP137 Excel U...
    PART #2 แสดงข้อมูลใน List Box ของฟอร์ม
    • Excel : EP138 Excel U...
    PART #3 ใส่ข้อมูล Combo Box & นำข้อมูล List Box มาแสดงในฟอร์ม
    • Excel User Form สร้างฟ...
    PART#4 ค้นหาข้อมูลจาก Text Box
    • Excel User Form สร้างฟ...
    PART#5 การ Update และ Delete ข้อมูล
    • Excel User Form สร้างฟ...
    PART#6 เพิ่มรายการใหม่ด้วยปุ่ม Insert
    • Excel User Form สร้างฟ...
    PART#7 Insert Picture การแทรกรูปในฟอร์ม
    • Excel User Form สร้างฟ...
    PART#8 ใส่ข้อมูลวันที่ด้วย Date Picker
    • Excel User Form สร้างฟ...
    PART#9 แทรกข้อมูลรูปภาพลงใน Cell ด้วย User Form
    • Excel User Form สร้างฟ...
    PART#10 ค้นหาและแสดงข้อมูลใน Listbox
    • Excel User Form สร้างฟ...
    ---------------------------------------------------------
    file Excel ดาวน์โหลดได้ตาม link ด้านล่างครับ
    drive.google.c...
    -------------------------------------------------------
    ฟอร์ม calendar โหลดได้จาช่อง youtube ด้านล่างครับ
    • Calendar Design in Ex...

ความคิดเห็น • 24

  • @KruChabuPrommarath
    @KruChabuPrommarath 4 หลายเดือนก่อน

    Calendar ปีเริ่มต้น 2004 หากเราต้องการเปลี่ยนเริ่มต้น ปี 1990 ต้องทำอย่างไรครับอาจารย์

    • @roon
      @roon  4 หลายเดือนก่อน

      เข้าไปแก้ไขในฟอร์ม calendar
      With Me.cmbYear
      For i = VBA.Year(Date) - 20 To VBA.Year(Date) + 20
      .AddItem i
      Next i
      .Value = VBA.Format(VBA.Date, "YYYY")
      End With
      เปลี่ยนจาก -20 เป็น -50 หรือเท่าไหร่ก็ได้ที่เราต้องการ
      หมายถึงจากปัจจุบัน ย้อยไป 20 หรือ 50 ปี

    • @KruChabuPrommarath
      @KruChabuPrommarath 4 หลายเดือนก่อน

      @@roon ขอบคุณครับอาจารย์

  • @PorMOHOval
    @PorMOHOval 6 หลายเดือนก่อน

    อาจารย์ครับพอผมกดเลือกวันที่เสร็จเเล้วหน้า userform หายไปเลยครับ ต้องแก้ตรงไหนหรอครับอาจารย์

    • @roon
      @roon  6 หลายเดือนก่อน

      ลบคำสั่ง unload form ออกไปก่อนครับ

    • @PorMOHOval
      @PorMOHOval 6 หลายเดือนก่อน

      @@roon แต่ไม่เป็นไรแล้วครับ ผมลองรีเครื่องได้เฉยเลยครับ

  • @nooladdawan
    @nooladdawan 11 หลายเดือนก่อน +1

    ขอบคุณมากๆค่ะ มีประโยชน์มาก
    แหมๆ จะมีใครว่าคุณรูนเมืองตรังได้ค่ะ

    • @roon
      @roon  11 หลายเดือนก่อน

      ขอบคุณครับ

  • @A.-ev9rj
    @A.-ev9rj 8 หลายเดือนก่อน

    สอบถามหน่อยคะ ทำไมวันที่ที่บันทึกลง excel จาก 2/1/24 เป็น 1/2/24 ส่วนใน form ตรง text คือ 2/1/24 ใน List กับ excel แสดงเป็น 1/2/24 ลองตั้งค่าวันที่แล้ว ยังไม่ได้ค่ะ

    • @roon
      @roon  8 หลายเดือนก่อน

      เปลี่ยนรูปแบบเซลล์เป็น แบบ custom เป็น dd/mm/yy ได้เลยครับ

  • @jirawutti
    @jirawutti 10 หลายเดือนก่อน

    ขอคำแนะนำด้วยครับ ผมนำไปปรับใช้ เพื่อคำนวณหาอายุปัจจุบัน จากวันเกิดที่กรอกด้วย Datepicker แล้ว ค่าที่ได้ขึ้น #Num จึงต้องไปกดคลิก ที่แถบสูตรที่ Cell นั้นอีกครั้งหนึ่งก่อน เหมือนจะให้ Active Cell รับทราบว่าเป็น วัน/เดือน/ปี จึงจะคำนวณอายุมาให้ครับ ไม่ทราบต้องแก้ไขอย่างไร เพื่อให้คำนวณอายุอัตโนมัติ หลังจาก คลิกเลือกวัน/เดือน/ปี ที่ Datepicker แล้วครับ

    • @roon
      @roon  10 หลายเดือนก่อน

      เบื้องต้นผมแนะนำ คลิกที่ column หรือ คอลัมน์ ที่จะเก็บวันที่ แล้วเปลี่ยนรูปแบบเซลล์เป็น date
      เป็นการกำหนดใว้ก่อน แล้วค่อยใช้ date picker ไปเก็บในเซล์ หรือ คอลัมน์นั้น

  • @np.8086
    @np.8086 11 หลายเดือนก่อน

    มันขึ้นว่าหา text หรือ data ไม่เจออ่ะค่ะ

  • @ศิริลักษณ์ทองประเสริฐ

    สวัสดีค่ะ มีเรื่องรบกวนอยากสอบถามค่ะ คือหนูเอาที่อาจารย์สอนไปปรับใช้ แต่หนูต้องการให้ปุ่ม delete ลบข้อมูลแถวที่เราคลิกจาก list box ค่ะ แบบว่าคลิกชุดข้อมูลจาก list box แล้วลบแถวที่กำลังโชว์ข้อมูลอยู่หน้าฟอร์มอ่ะค่ะ หนูลองหลายแบบแล้วแต่ก็ยังทำไม่ได้ รบกวนสอบถามด้วยนะคะ

    • @roon
      @roon  ปีที่แล้ว

      ในคลิปเมื่อ double click แล้ว จะไปแสดงในฟอร์ม แล้วค่อยไปลบออกด้วยปุ่ม delete ของฟอร์ม
      แต่ถ้าหาก double click ใน list box แล้วต้องการจะลบ
      ต้องเขียน code เพิ่มครับ
      แล้วจะทำคลิปให้น่ะครับ ขอบคุณครับ

  • @A.-ev9rj
    @A.-ev9rj 8 หลายเดือนก่อน

    @roon อาจารย์ค่ะ ในกรณีสร้าง date picker เอง จะเรียกให้ โชว ลง textbox ยังไงค่ะ ต้องไปเพิ่มตรงไหนคะ

    • @roon
      @roon  8 หลายเดือนก่อน

      ดูตัวอย่างจาก file ผมได้เลยครับ
      Double click ที่ text ที่เรียก date picker จะเห็น code ครับ
      นำไปประยุกต์ใช้ได้เลย

  • @widaratn
    @widaratn 11 หลายเดือนก่อน

    รบกวนสอบถามค่ะ พอดีกำลังทำฟอร์มบันทึกการรับจ่ายเงินตามใบแจ้งหนี้ กรณีมีช่องให้ใส่วันที่ 2 ช่อง คือ 1. วันที่ตามใบแจ้งหนี้ และ 2. วันจ่ายเงิน ทำแล้วเกิดปัญหาว่าถ้าไม่ใส่วันที่จ่ายเงิน ระบบไม่ยอมให้บันทึก ต้องกำหนดยังไงค่ะ (จะมาบันทึกวันจ่ายเงินทีหลัง)
    ขอบคุณค่ะ

    • @roon
      @roon  11 หลายเดือนก่อน

      ต้องแก้ไข code ครับ และต้องเห็น code ก่อนน่ะครับ จึงจะแนะนำว่าแก้ไขส่วนไหนครับ

    • @widaratn
      @widaratn 11 หลายเดือนก่อน

      @@roon code เป็นแบบนี้ค่ะ
      Private Sub cmdInsert_Click()
      If Me.OptionButton1.Value = False And Me.OptionButton2.Value = False Then
      MsgBox "Please Select Type", vbCritical
      Exit Sub
      End If
      If Me.ComboBox1.Value = "" Then
      MsgBox "Please Select Company Name", vbCritical
      Exit Sub
      End If
      If Me.ComboBox2.Value = "" Then
      MsgBox "Please Select Country", vbCritical
      Exit Sub
      End If
      If Me.Combobox3.Value = "" Then
      MsgBox "Please Select Agent Name", vbCritical
      Exit Sub
      End If
      If Len(Trim(Me.txtInvoiceDate.Value)) = 0 Then
      MsgBox "Please fill Invoice Date", vbCritical
      Exit Sub
      End If
      If Len(Trim(Me.txtDetail.Value)) = 0 Then
      MsgBox "Please fill Detail", vbCritical
      Exit Sub
      End If
      If Me.txtAmount.Value = 0 Then
      MsgBox "Please fill Amount", vbCritical
      Exit Sub
      End If
      If Len(Trim(Me.txtPaymentDate.Value)) = 0 Then
      MsgBox "Please fill Payment Date", vbCritical
      Exit Sub
      End If

      Dim sh As Worksheet
      Set sh = ThisWorkbook.Sheets("Trademark")
      Dim lastrow As Long
      lastrow = Application.WorksheetFunction.CountA(sh.Range("A:A"))
      If Me.OptionButton1.Value = True Then
      sex = "Unpaid"
      End If
      If Me.OptionButton2.Value = True Then
      sex = "Paid"
      End If
      sh.Range("A" & lastrow + 1).Value = Me.txtInvoiceNo.Value
      sh.Range("B" & lastrow + 1).Value = sex
      sh.Range("C" & lastrow + 1).Value = Me.ComboBox1.Value
      sh.Range("D" & lastrow + 1).Value = Me.ComboBox2.Value
      sh.Range("E" & lastrow + 1).Value = Me.Combobox3.Value
      sh.Range("F" & lastrow + 1).Value = Me.txtInvoiceDate.Value
      sh.Range("G" & lastrow + 1).Value = Me.txtDetail.Value
      sh.Range("H" & lastrow + 1).Value = Me.txtAmount.Value
      sh.Range("I" & lastrow + 1).Value = Me.txtPaymentDate.Value
      '------------picture---------

      If PicName "" Then 'insert picture to cell
      sh.Range("K" & lastrow + 1).Activate
      Dim pic As Picture

      sh.Range("J" & lastrow + 1).Value = PicName

      Set pic = ActiveSheet.Pictures.Insert(PicName)
      With pic
      .ShapeRange.LockAspectRatio = msoFalse
      .Height = ActiveCell.Height
      .Width = ActiveCell.Width
      .Top = ActiveCell.Top
      .Left = ActiveCell.Left
      .Placement = xlMoveAndSize
      End With
      Set pic = Nothing
      End If


      sh.Range("J" & lastrow + 1).Value = PicName
      '------------------------------
      Call clear_data
      Call Disable_cmd
      Call ShowData

  • @moohammadhmad1682
    @moohammadhmad1682 ปีที่แล้ว

    มีตัวอย่างให้โหลดเล่นด้วย ขอบคุณมากๆ ครับ

    • @roon
      @roon  ปีที่แล้ว

      ยินดีครับ

  • @jakapanpornkitwattanatawor2424
    @jakapanpornkitwattanatawor2424 ปีที่แล้ว

    ขอบคุณครับ ❤

    • @roon
      @roon  ปีที่แล้ว

      ยินดีครับ