วิธีที่ 1 – การเลื่อนข้อความแอนิเมชั่น

- เปิด หน้าต่าง Visual Basic โดยการกด Alt+F11 .
- แทรกโมดูลใหม่โดยไปที่ แทรก และคลิกที่ โมดูล .

- คัดลอกโค้ดต่อไปนี้และวางลงในโมดูลใหม่:
' 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 .
- มันสร้าง วนซ้ำ ที่เลื่อนข้อความจากซ้ายไปขวา
- ปรับความเร็วโดยการเปลี่ยนค่า AA .
- หากต้องการหยุดการเลื่อน ให้ใช้ Stop_Scrolling รูทีนย่อย
- เพิ่มปุ่มสำหรับเริ่มและหยุดการเลื่อน:
- แทรกรูปร่าง (เช่น สี่เหลี่ยม) จากส่วนแทรก แท็บ

- ป้อน เริ่มการเลื่อน ภายในรูปทรงเดียว

- กำหนด Start_Text_Scroll มาโครเป็นรูปร่างนี้

- คลิก ตกลง .

- ทำซ้ำสำหรับ หยุดการเลื่อน ปุ่ม.

- ใช้ปุ่มเพื่อเริ่มและหยุดการเลื่อนข้อความ

วิธีที่ 2 – ข้อความเคลื่อนไหวกะพริบ
- วาดกล่องข้อความ
- ไปที่ส่วนแทรก และเลือก ข้อความ และคลิกที่ กล่องข้อความ .

- วาดกล่องข้อความ ตามขนาดที่คุณต้องการ

- ป้อน ข้อความ คุณอยากจะกระพริบตา

- เพิ่มกล่องข้อความว่าง
- สร้างกล่องข้อความเพิ่มเติมที่มีรูปร่างและขนาดใกล้เคียงกัน

- เปลี่ยนชื่อกล่องข้อความ
- เปลี่ยนชื่อกล่องข้อความดังนี้:กล่องข้อความ 1 , กล่องข้อความ 2 และอื่นๆ

- กล่องข้อความซ้อนทับ
- จัดเรียงกล่องข้อความทั้งหมดเพื่อให้ซ้อนทับกันและปรากฏเป็นกล่องเดียว

- โค้ด VBA
- เปิดตัวแก้ไข VBA โดยกด Alt+F11 .
- แทรกโมดูลใหม่ (แทรก> โมดูล ).

- ป้อนรหัสต่อไปนี้:
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

️ รหัสทำงานอย่างไร ป>
- การ กะพริบ รูทีนย่อยนำกล่องข้อความมาไว้ข้างหน้าทีละกล่อง (จาก กล่องข้อความ 1 ถึงกล่องข้อความ 5 ) โดยใช้ ZOrder คำสั่ง
- การจัดการข้อผิดพลาดช่วยให้แน่ใจว่ากล่องข้อความแรกยังคงมองเห็นได้
- รหัสแผ่นงาน
- ในโค้ดเวิร์กชีต ให้ป้อน:
Private Sub Worksheet_Change(ByVal Tgt As Range)
If Tgt = Range("B4") Then
Call Blink
End If
End Sub

️ รหัสทำงานอย่างไร ป>
- เมื่อข้อมูลถูกแทรกลงในเซลล์ B4 , Excel เรียก กะพริบ โมดูล.

สิ่งที่ต้องจดจำ
- ในวิธีที่ 2 อย่าลืมเปลี่ยนชื่อให้ถูกต้องและจัดตำแหน่งกล่องข้อความเพื่อให้ภาพเคลื่อนไหวราบรื่น
ดาวน์โหลดสมุดแบบฝึกหัด
คุณสามารถดาวน์โหลดสมุดแบบฝึกหัดได้จากที่นี่:
บทความที่เกี่ยวข้อง
- วิธีสร้างการแข่งขันกราฟแท่งแบบเคลื่อนไหวใน Excel
- วิธีสร้างแผนภูมิแบบเคลื่อนไหวใน Excel
- ภาพเคลื่อนไหว VBA ใน UserForm