Page 1 of 1
ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 06, 2013 4:06 pm
by sakoobaa
ตามเอกสารที่แนบ จากชีส 1 เห็นได้ว่ามีข้อมูลที่ใส่ตัวเลขอยู่ เมื่อกด vba ทำการดึงข้อมูลเฉพาะที่ใส่ตัวเลขไว้ชีส 2 ไม่ทราบว่าควรใส่สูตรอย่างไรดีครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 06, 2013 4:37 pm
by snasui

ลองตามนี้ครับ
ที่ Sheet2 เซลล์ D6 คีย์
=SUMIF(Sheet1!$C$8:$C$10,$C6,Sheet1!$D$8:$D$10)+SUMIF(Sheet1!$F$8:$F$10,$C6,Sheet1!$G$8:$G$10)
Enter > Copy ลงด้านล่าง
การใช้ VBA จำเป็นต้องเขียนมาเอง ติดตรงไหนค่อยมาถามกันครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 06, 2013 9:41 pm
by sakoobaa
เรียนอาจารย์ พอดีว่าสูตรที่อาจารย์ให้มันอ้างอิงกับตัวอักษรด้านหน้า กระผมอยากจะขอสูตรเพิ่มเติมที่ จากชีส1เมื่อตัวเลขอยู่ในช่องใด ก็ยกมาทั้ง รายการ จำนวน หน่วยนับ เรียงต่อบรรทัดไม่ทราบต้องเขียนยังไงครับ หรือต้องใช้ vba เข้าช่วย
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Mon Jan 07, 2013 8:58 am
by snasui

การที่ตัวเลขอยู่ในเซลล์ใดแล้วยกมาทั้งบรรทัดก็สามารถทำด้วยสูตรได้
หากว่ามองแค่คอลัมน์ใดคอลัมน์หนึ่ง แต่หากมองหลายคอลัมน์คงต้องพึ่ง VBA ครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Wed Jan 09, 2013 11:01 pm
by sakoobaa
เรียน อาจารย์ครับพอดีผมพยายามเขียน vba ตามที่อาจารย์บอกว่าลองดูก่อน แต่ไม่ค่อยมีความรู้ด้านนี้มากเท่าไหร่
ไม่ทราบอาจารย์เขียนเพื่อเป็นแนวทางให้ผมได้ไหมครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Wed Jan 09, 2013 11:04 pm
by snasui

ต้องขออภัยที่ไม่เขียนให้ก่อนเพื่อความเสมอภาคของเพื่อนสมาชิก สำหรับ VBA แล้วต้องศึกษามาเองและเขียนมาก่อน ติดตรงไหนแล้วถามกันตามกฎข้อที่ 5 ด้นบนครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Thu Jan 10, 2013 9:57 pm
by sakoobaa
เรียนอาจารย์ไฟล์ที่แนบมานั้นผมลองทำสูตรดูแล้วครับแต่ไม่ทราบว่าจะเพิ่มเงื่อนไข ให้มัน copy เฉพาะรายการที่มีตัวเลข
ให้มาเรียงต่อกัน ไม่ทราบว่าต้องแก้ตรงไหนบ้างครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Thu Jan 10, 2013 10:26 pm
by snasui

ลองปรับ Code เป็นตามด้านล่างครับ
Code: Select all
Sub Button2_Click()
Dim rAll As Range, r As Range
Set rAll = Sheets("Sheet1").Cells.SpecialCells(xlCellTypeConstants, 1)
For Each r In rAll
Sheets("002").Range("A" & Rows.Count).End(xlUp).Offset(1, 0) _
.Resize(1, 3) = r.Offset(0, -1).Resize(1, 3).Value
Next r
End Sub
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sat Jan 12, 2013 7:45 pm
by sakoobaa

ขอบคุณอาจารย์มากๆคับ สูตรที่ให้มาตรงตามจุดประสงค์ครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 13, 2013 10:46 am
by sakoobaa
เรียนอาจารย์ครับ ขอรบกวนเพิ่มเติมหน่อยครับตามสูตรที่อาจารย์ให้มา ไม่ทราบว่าถ้าเพิ่มเงื่อนไขให้รันเลขลำดับ ตามรายการที่เพิ่มขึ้นไม่ทราบว่าควรเพิ่มตรงไหนครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 13, 2013 10:58 am
by snasui

ปรับ Code มาก่อนแล้วถามเฉพาะทีติดเสมอครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 13, 2013 12:31 pm
by sakoobaa
อาจารย์ครับ พอดีลองใส่สูตรงช่อง B6 ให้รันลำดับลงมาเอง พอผมกด VBA จากอีกชีสให้ข้อมูลมารันในช่อง C6:C14 ผลปรากฎว่า เลขออกมาจริงครับแต่ ขาดเป็นบางช่วงไม่ทราบว่าสูตรตัวนี้สามารถปรับเปลี่ยน หรือ แก้ไขแบบไหนดีครับ
ได้แนนไฟล์ติดมาด้วยคับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 13, 2013 1:03 pm
by snasui

ไฟล์ที่แนบมา ไม่มีสูตร ไม่มี VBA ครับ ช่วยแนบมาใหม่และแจ้งด้วยว่า Code อยู่ใน Module ใด ชื่ออะไร จะได้สะดวกในการช่วยทดสอบครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 13, 2013 1:17 pm
by sakoobaa
แนบให้ใหม่แล้วครับอาจารย์
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Sun Jan 13, 2013 1:43 pm
by snasui

ลองตามนี้ครับ
ที่ B6 คี่ย์
=IF($D6="","",COUNT(D$6:D6))
Enter > Copy ลงด้านล่าง
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Mon Jan 14, 2013 10:06 pm
by sakoobaa
ขอบคุณมากครับอาจารย์
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Mon Jan 14, 2013 10:09 pm
by sakoobaa
ขอรบกวนเพิมเติมนะครับ จากไฟล์ที่แนบให้ ในสูตร vba message box ต้องการเพิ่มเงื่อนไข เมื่อกด yes ให้ไปชีส 2 นะครับ
Re: ลบกวนสอบถามสูตรดึงข้อมูลเฉพาะหน่อยครับ
Posted: Mon Jan 14, 2013 10:14 pm
by snasui
sakoobaa wrote:ต้องการเพิ่มเงื่อนไข เมื่อกด yes ให้ไปชีส 2 นะครับ

ลองดูตัวอย่าง Code ตามด้านล่างครับ
Code: Select all
Sub Button1_Click()
Dim iRet As Integer
Dim strPrompt As String
Dim strTitle As String
' Promt
strPrompt = "Ask Your Question Here, OK?"
' Dialog's Title
strTitle = "My Tite"
'Display MessageBox
iRet = MsgBox(strPrompt, vbYesNo, strTitle)
' Check pressed button
If iRet = vbNo Then
MsgBox "NO!"
Else
MsgBox "Yes!"
Sheets("Sheet2").Select
End If
End Sub