การ replace ข้อมูลโดย code vba
Posted: Sat Jul 21, 2012 11:41 pm
From FJAN
To FFEB
A B C
11 22.00
22 44.00
33 66.00
ดิฉันอยากจะขอคำแนะนำท่านผู้รู้ เกี่ยวกับเรื่องการเขียน code เพื่อ replace ข้อมูลคะ
ข้อมูลที่ต้องการ replace คือ FJAN, FFEB, FMAR,… ซึ่งจะต้องทำการ replace สลับไปมาระหว่างกัน
โดยเงื่อนไขตามนี้คะ
ดิฉันจะต้องดูว่าสูตร ณ ปัจจุบันอยู่ที่สูตร ถ้าอยู่ที่ FJAN และดิฉันต้องการที่จะเปลี่ยนเป็น FFEB
ก็จะเลือกที่ C2 = FJAN และที่ C4 = FFEB
โดยดิฉันทดลองเขียน code ได้ตามนี้คะ
Private Sub CommandButton1_Click()
If ActiveSheet.Range("C2") = "FJAN" And Range("C4") = "FFEB" Then
Application.Goto Reference:="Source"
Selection.Replace What:=ActiveSheet.Range("C2"), Replacement:=ActiveSheet.Range("C4"), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End If
End Sub
ซึ่ง code ที่ดิฉันเขียนสามารถ run ได้เพียงแค่ครั้งเดียว แต่ดิฉันต้องการที่จะเปลี่ยนจาก FFEB เป็นเดือนอื่น
จะต้องเขียน code อย่างไรคะ
การที่ดิฉันไม่ replace ข้อมูลแบบ mannual คือ กด ctrl+H เนื่องจาก file ดังกล่าวนี้จะมีผู้อื่นใช้ร่วมด้วยหลายคน
ซึ่งบางคนยังไม่ค่อยคล่องเกี่ยวกับการใช้ excel เท่าได้นัก และข้อมูลที่จะ replace ก็มีเป็นจำนวนมากคะ
To FFEB
A B C
11 22.00
22 44.00
33 66.00
ดิฉันอยากจะขอคำแนะนำท่านผู้รู้ เกี่ยวกับเรื่องการเขียน code เพื่อ replace ข้อมูลคะ
ข้อมูลที่ต้องการ replace คือ FJAN, FFEB, FMAR,… ซึ่งจะต้องทำการ replace สลับไปมาระหว่างกัน
โดยเงื่อนไขตามนี้คะ
ดิฉันจะต้องดูว่าสูตร ณ ปัจจุบันอยู่ที่สูตร ถ้าอยู่ที่ FJAN และดิฉันต้องการที่จะเปลี่ยนเป็น FFEB
ก็จะเลือกที่ C2 = FJAN และที่ C4 = FFEB
โดยดิฉันทดลองเขียน code ได้ตามนี้คะ
Private Sub CommandButton1_Click()
If ActiveSheet.Range("C2") = "FJAN" And Range("C4") = "FFEB" Then
Application.Goto Reference:="Source"
Selection.Replace What:=ActiveSheet.Range("C2"), Replacement:=ActiveSheet.Range("C4"), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End If
End Sub
ซึ่ง code ที่ดิฉันเขียนสามารถ run ได้เพียงแค่ครั้งเดียว แต่ดิฉันต้องการที่จะเปลี่ยนจาก FFEB เป็นเดือนอื่น
จะต้องเขียน code อย่างไรคะ
การที่ดิฉันไม่ replace ข้อมูลแบบ mannual คือ กด ctrl+H เนื่องจาก file ดังกล่าวนี้จะมีผู้อื่นใช้ร่วมด้วยหลายคน
ซึ่งบางคนยังไม่ค่อยคล่องเกี่ยวกับการใช้ excel เท่าได้นัก และข้อมูลที่จะ replace ก็มีเป็นจำนวนมากคะ