RSS

เมื่อคีย์ข้อมูลแล้วให้ย้ายข้อมูลไปแสดงผลต่อจากข้อมูลด้านบน

01 Jul

ปกติการคีย์ข้อมูลแล้วให้นำข้อมูลไปวางใน Database นั้นดูเป็นเรื่องปกติและสามารถทำได้ด้วย VBA ครับ แต่ที่จะนำเสนอต่อไปนี้เป็นการคีย์ข้อมูลลงในฐานข้อมูลแล้วให้โปรแกรมทำการเรียงข้อมูลให้ใหม่ซึ่งออกจะแปลกไปสักหน่อย โดยให้เซลล์ที่เพิ่งคีย์ไปนั้นย้ายไปต่อท้ายข้อมูลด้านบนลงมาเรื่อย ๆ เนื่องจากว่าไม่ได้คีย์ตามลำดับ แต่เลือกที่จะคีย์เซลล์ใด ๆ ก็ได้ ดูภาพประกอบด้านล่างครับ

ภาพประกอบการคีย์ข้อมูลแล้วให้ข้อมูลไปต่อจากข้อมูลด้านบน

InsertAndShiftDown

การทำเช่นนี้สามารถใช้ Worksheet Change Envent โดยวาง Code VBA ด้านล่างที่ Sheet1 ในโปรแกรม VBE จากนั้นทดสอบคีย์ข้อมูลตามต้องการ

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
With Target
If .Count > 1 Then
Exit Sub
ElseIf .Column = 2 And .Offset(1, 0) = "" _
And .Offset(-1, 0) = "" Then
.Offset(0, -1).Resize(, 2).Cut
.End(xlUp).Offset(1, -1) _
.Resize(, 2).Insert shift:=xlDown
End If
End With
Application.ScreenUpdating = True
End Sub

Open-mouthed smile Winking smile Smile

 
Leave a comment

Posted by on 01/07/2011 in Offset, Order, Sort

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: