วิธีที่ 1 – Scrolling Text Animation (ข้อความวิ่ง)

- เปิด Visual Basic Window ด้วย Alt+F11
- แทรกโมดูลใหม่: Insert > Module

- คัดลอกโค้ดด้านล่าง วางในโมดูล:
' Scrolling Text
Sub Start_Text_Scroll()
My_Value = ActiveSheet.Range("C4").Value
Final_Value = WorksheetFunction.Rept(My_Value, 1)
Do
For initial = 1 To Len(Final_Value)
Length = Len(Final_Value) - 1
DoEvents
For AA = 1 To 10000000
AA = AA + 1
Next
Range("B6") = Mid(Final_Value, initial, Length) & Left(Final_Value, initial - 1)
Next
Loop
End Sub
Sub Stop_Scrolling()
End
End Sub

️ โค้ดทำงานอย่างไร?
- Start_Text_Scroll ทำให้ข้อความในเซลล์ C4 วิ่ง
- สร้าง Loop เลื่อนข้อความจากซ้ายไปขวา
- ปรับความเร็วโดยเปลี่ยนค่า AA
- หยุดการวิ่งด้วย Stop_Scrolling
- เพิ่มปุ่มควบคุม:
- แทรกรูปทรง (เช่น สี่เหลี่ยม) จากแท็บ Insert

-
- พิมพ์ Start Scrolling ในรูปทรงหนึ่ง

-
- กำหนดแม็กโคร Start_Text_Scroll ให้รูปทรงนี้

-
- คลิก OK

-
- ทำซ้ำสำหรับปุ่ม Stop Scrolling

- ใช้ปุ่ม Start/Stop ควบคุมการวิ่งของข้อความ

วิธีที่ 2 – Blinking Animated Text (ข้อความกระพริบ)
- วาด Text Boxes
- ไปที่แท็บ Insert เลือก Text > Text Box

-
- วาด Text Box ขนาดที่ต้องการ

-
- พิมพ์ ข้อความ ที่ต้องการให้กระพริบ

- เพิ่ม Text Boxes ว่าง
- สร้าง Text Box เพิ่ม รูปทรงขนาดคล้ายกัน

- เปลี่ยนชื่อ Text Boxes
- ตั้งชื่อเป็น: TextBox 1, TextBox 2, ...

- ทับซ้อน Text Boxes
- จัดวางทับกันจนดูเหมือนกล่องเดียว

- โค้ด VBA
- เปิด VBA Editor (Alt+F11)
- แทรกโมดูลใหม่ (Insert > Module)

- ใส่โค้ดต่อไปนี้:
Sub Blink()
On Error GoTo skip
Do While Range("B4").Value = "Blink"
For txtbx = 1 To 5
ActiveSheet.Shapes("TextBox " & txtbx).ZOrder msoBringToFront
DoEvents
Next txtbx
Loop
skip:
ActiveSheet.Shapes("TextBox 1").ZOrder msoBringToFront
Exit Sub
End Sub

️ โค้ดทำงานอย่างไร?
- Blink subroutine นำ Text Box มาหน้าสลับกัน (1 ถึง 5) ด้วยคำสั่ง ZOrder
- Error handling ทำให้ TextBox 1 คงมองเห็นได้
- Worksheet Code
- ในโค้ด Worksheet ใส่:
Private Sub Worksheet_Change(ByVal Tgt As Range)
If Tgt = Range("B4") Then Call Blink
End If
End Sub

️ โค้ดทำงานอย่างไร?
- เมื่อมีข้อมูลใส่ในเซลล์ B4 Excel จะเรียกโมดูล Blink

ข้อควรจำ
- ในวิธีที่ 2 จดจำ: ตั้งชื่อและจัดตำแหน่ง Text Box ให้ถูกต้อง เพื่ออนิเมชันลื่นไหล
ดาวน์โหลดสมุดงานฝึกหัด
ดาวน์โหลดไฟล์ฝึกหัดได้ที่นี่:
บทความเกี่ยวข้อง
- วิธีสร้าง Animated Bar Chart Race ใน Excel
- วิธีสร้าง Animated Charts ใน Excel
- VBA Animation in UserForm
รับแบบฝึกหัด Excel ขั้นสูงพร้อมเฉลยฟรี!