Page 1 of 1
กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Fri Aug 26, 2011 12:40 pm
by bubblebee
รบกวนท่านผู้รู้ทุกท่าน ดิฉันพึ่งฝึกลองทำ vba ใน excel พอกรอกข้อมูลแล้วมันไม่ออกใน excel ขึ้น errow ไม่ทราบไปกรอก code ตัวไหนผิด ช่วยดูให้ด้วยค่ะ และถ้าเราจะทำ ปุ่มคลิ๊กเพื่อให้เข้ามาหน้าที่คีย์ข้อมูลผู้สมัครงานจะต้องทำอย่างไรค่ะ ช่วยด้วยค่ะ ขอบพระคุณมากค่ะ
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Fri Aug 26, 2011 12:50 pm
by snasui

ไฟล์ที่ส่งมาไม่มี Code VBA ครับ ไม่แน่ใจว่าแนบมาถูกไฟล์หรือไม่ หากแนบมาผิดช่วยแนบมาใหม่ด้วยครับ และช่วยอธิบายพอสังเขปว่า กำลังจะทำอะไร อย่างไร ปัญหาคืออะไร จะได้เข้าถึงปัญหาได้โดยไวครับ
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Fri Aug 26, 2011 1:00 pm
by bubblebee
อาจารย์ค่ะ พอเราเปิดเข้าไป จะเป็นหน้า excel ว่างเหล่า ดิฉันก็จะกด tool macro และเลือก vba visual basic ค่ะ และพอเข้ามากด เพลย์ มันก็จะแสดงตรง excel แต่ถ้านำมาวางหน้า excel เลยเวลาเปิดก็ไม่รู้ว่าต้องทำอย่างไร รบกวนด้วยค่ะอาจารย์ขอบพระคุณค่ะ
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Fri Aug 26, 2011 1:06 pm
by snasui

ไม่ทราบว่าต้องการจะทำอะไรครับ อธิบายเป็นขั้นตอนได้ไหมครับ
สิ่งที่กำลังจะทำโดยเข้าเมนู Tools > Macro > Visual Basic
เป็นการเปิดหน้าต่าง VBE คือหน้าต่าง Visual Basic Editor เป็นหน้าต่างที่ใช้เขียน Code คำสั่งต่าง ๆ ครับ
ไม่ทราบว่าได้เขียน Code ใดลงไปบ้างแล้วยังครับ ถ้าเขียนแล้วขอดูหน่อยว่า Code ที่เขียนนั้นเป็นอย่างไร เผื่อว่าจะได้เข้าใจได้เพิ่มขึ้น
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Fri Aug 26, 2011 1:19 pm
by bubblebee
คืองี้ค่ะ ดิฉันได้ทำแบบฟอร์มแล้วใน vba เป็นการกรอกข้อมูลผู้สมัครงาน
เนื้อหาก็จะมี
1.รหัสผู้สมัคร
2.วันที่รับสมัคร
3.แหล่งที่มาของข้อมูล
4.เพศ ติ๊ค ชายและหญิง
5.ชื่อ นามสกุล
6.วันเกิด ก็จะทำเป็นตารางปฏิทิน
7.อายุ
8.ใส่ปุ่ม set sheet add และ close
พอดิฉันใส่ข้อมูลหมดแล้วและกด สามเหลี่ยมที่เป็นตัวเพลย์ เพื่อจะดูว่าข้อมูลเข้าไปใน excel sheet หรือเปล่าปรากฏว่ามันขึ้น errow ค่ะ และกลับไปหน้า vba เหมือนเดิม colum ใน excel ที่จะให้ขึ้นคือ
รหัสผู้สมัคร วันที่รับสมัคร แหล่งที่มาของข้อมูล ชื่อผู้สมัครเช่น นางสาวชยพร สุไชยยะ วันเกิด อายุ
ประเด็นที่ 2 หากแก้ไขได้แล้ว หากจะให้หน้าฟอร์มที่เราเขียน show ที่หน้า excel เลยต้องทำอย่างไร
ประเด็นที่3 หากเราจะทำปุ่มกด เช่น กรอกข้อมูลผู้สมัครงาน พอกดก็ให้เข้ามาที่หน้าฟอร์มนี้เลยต้องทำอย่างไรค่ะ
พึ่งเริ่มหัดเขียนตามหนังสือค่ะ งงๆ และคิดว่าหากพอเป็นฟอร์มนี้ ฟอร์มอื่นคงสามารถทำได้ รบกวนอาจารย์ด้วยค่ะ ขอบคุณค่ะ
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Fri Aug 26, 2011 1:22 pm
by snasui

แล้วไฟล์ทีว่านั้นอยู่ทีไหน ช่วยส่งมาให้ดูด้วยครับ จะได้ช่วยดูให้ครับ อ่านตรงนี้แล้วยังครับ
snasui wrote:
ไฟล์ที่ส่งมาไม่มี Code VBA ครับ ไม่แน่ใจว่าแนบมาถูกไฟล์หรือไม่ หากแนบมาผิดช่วยแนบมาใหม่ด้วยครับ และช่วยอธิบายพอสังเขปว่า กำลังจะทำอะไร อย่างไร ปัญหาคืออะไร จะได้เข้าถึงปัญหาได้โดยไวครับ
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Fri Aug 26, 2011 1:31 pm
by bubblebee
โค๊ดประมาณนี้ค่ะ อาจารย์ file ที่ส่งให้ถูกต้องแล้วเจ้าค่ะ แต่ต้องคลิ๊ก tool macro visual basic editor มันก็จะขึ้นหน้าตาฟอร์มขึ้นมาเลยเจ้าค่ะ
Private Sub btnAdd_Click()
Cells(intRows, 4).Value = "¤Ø³" + txtName.Text + " " + txtSurname.Text
End If
End Sub
Private Sub btnClose_Click()
ActiveWorkbook.SaveAs Filename:="C:\Data\ExUserForm.xml", FileFormat:=xlOpenXMLWorkbookMacroEnabled
ActiveWorkbook.Close '»Ô´â»Ãá¡ÃÁ
End Sub
Private Sub btnSetSheet_Click()
intRows = 1
Range("A1:B6").Merge
Cells(intRows, 1).Value = "ÃÒª×èͼÙéÊÁѤçҹ TEI"
Cells(intRows, 1).Interior.Color = vbGreen
intRows = intRows + 1
Cells(intRows, 1).Value = "ÃËÑʼÙéÊÁѤÃ"
Cells(intRows, 1).Interior.Color = vbYellow
Cells(intRows, 2).Value = "Çѹ·ÕèÃѺÊÁѤÃ"
Cells(intRows, 2).Interior.Color = vbYellow
Celld(intRows, 3).Value = "áËÅè§·ÕèÁҢͧ¢éÍÁÙÅ"
Cells(intRows, 3).Interior.Color = vbYellow
Cells(intRows, 4).Value = "ª×èͼÙéÊÁѤÃ"
Cells(intRows, 4).Interior.Color = vbYellow
Cells(intRows, 5).Value = "Çѹà¡Ô´"
Cells(intRows, 5).Interior.Color = vbYellow
Cells(intRows, 6).Value = "ÍÒÂØ"
Cells(intRows, 6).Interior.Color = vbYellow
Range("A1:B6").Font.Name = "Angsana New"
Range("A1:B6").Font.Size = 16
Range("A1:B6").Font.Bold = True
Range("A1:B6").Borders.LineStyle = xlContinuous
Range("A1:B6").Borders.Weight = xlThin
Range("A1:B2").HorizontalAlignment = xlHAlignCenter
intRows = intRows + 1
End Sub
Private Sub lblSouce_Click()
End Sub
Private Sub radFemale_Click()
End Sub
Private Sub UserForm_Click()
End Sub
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Fri Aug 26, 2011 2:03 pm
by snasui

เปิดด้วย 2007 และ 2010 ไม่เห็น Form ครับ
เลยลองเปิดด้วย 2003 มี Form มาด้วยเรียบร้อยแล้ว
ต้องค่อย ๆ แก้ไปนะครับ Code ที่เขียนมานั้นยังมีผิดพลาดอยู่ครับ เช่น
bubblebee wrote:Private Sub btnAdd_Click()
Cells(intRows, 4).Value = "¤Ø³" + txtName.Text + " " + txtSurname.Text
End If
End Sub
จะต้องเอา End If ออกไปครับ จะเหลือตามด้านล่าง
Code: Select all
Private Sub btnAdd_Click()
Cells(intRows, 4).Value = "¤Ø³" + txtName.Text + " " + txtSurname.Text
End Sub
ส่วน Code นี้ไม่ถูกต้องครับ
bubblebee wrote:Celld(intRows, 3).Value = "áËÅè§·ÕèÁҢͧ¢éÍÁÙÅ"
จะต้องแก้เป็น
Code: Select all
Cells(intRows, 3).Value = "áËÅè§·ÕèÁҢͧ¢éÍÁÙÅ"
ตัวแปร intRows ก็ไม่ได้ประกาศไว้แต่เอาไปใช้ในหลาย ๆ Procedure จึงเข้าใจว่าน่าประกาศไว้ด้านบนสุดของทุก Code ที่เขียน จะได้เป็น
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Mon Aug 29, 2011 10:50 am
by bubblebee
ขอบคุณมากค่ะ อาจารย์ แต่เปลี่ยนตามที่อาจารย์แจ้งแล้วมันก็ debug เหมือนเดิมเลยค่ะ
Re: กรอกข้อมูลใน VBA พเอให้ออก excelแต่มันไม่มาค่ะ
Posted: Mon Aug 29, 2011 11:46 am
by snasui

ส่งภาพมาดูด้วยครับว่า Debug ตรงไหนแนบไฟล์ที่แก้ไขล่าสุดมาด้วยครับจะได้ช่วยกันทดสอบครับ
