EXCEL TOOLS
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
[code]
และปิดด้วย [/code]
ตัวอย่างเช่น [code]dim r as range[/code]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)parakorn wrote:แนบตัวอย่างไฟล์ เพื่อให้ผู้ตอบสามารถช่วยเหลือได้
พร้อมลองเขียนโค้ดมาเอง พอสังเขป ตามกฎของบอร์ดครับ
Code: Select all
Sub Get_Information()
Name = Sheets(1).Cells(5, 4).Value
LastName = Sheets(1).Cells(5, 5).Value
Blood = Sheets(1).Cells(6, 4).Value
Position = Sheets(1).Cells(7, 4).Value
Gender = Sheets(1).Cells(8, 4).Value
Division = Sheets(1).Cells(9, 4).Value
Sheets(5).Cells(1, 1).Value = Name
Sheets(5).Cells(1, 2).Value = LastName
Sheets(5).Cells(1, 3).Value = Blood
Sheets(5).Cells(1, 4).Value = Position
Sheets(5).Cells(1, 5).Value = Gender
Sheets(5).Cells(1, 6).Value = Division
End Sub
Code: Select all
Sub Get_Information()
Dim Lrow As Integer
Lrow = Sheets(5).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
Name = Sheets(1).Cells(5, 4).Value
LastName = Sheets(1).Cells(5, 5).Value
Blood = Sheets(1).Cells(6, 4).Value
Position = Sheets(1).Cells(7, 4).Value
Gender = Sheets(1).Cells(8, 4).Value
Division = Sheets(1).Cells(9, 4).Value
Sheets(5).Cells(Lrow, 1).Value = Name
Sheets(5).Cells(Lrow, 2).Value = LastName
Sheets(5).Cells(Lrow, 3).Value = Blood
Sheets(5).Cells(Lrow, 4).Value = Position
Sheets(5).Cells(Lrow, 5).Value = Gender
Sheets(5).Cells(Lrow, 6).Value = Division
End Sub
ใช้งานได้ครับผม รบกวนอธิบาย code ส่วนนี้ทีครับ ขอบคุณครับpuriwutpokin wrote:สร้างหัวคอลัมไว้ด้วยนะครับแล้วใช้โค้ดนี้ดูครับCode: Select all
Sub Get_Information() Dim Lrow As Integer Lrow = Sheets(5).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row Name = Sheets(1).Cells(5, 4).Value LastName = Sheets(1).Cells(5, 5).Value Blood = Sheets(1).Cells(6, 4).Value Position = Sheets(1).Cells(7, 4).Value Gender = Sheets(1).Cells(8, 4).Value Division = Sheets(1).Cells(9, 4).Value Sheets(5).Cells(Lrow, 1).Value = Name Sheets(5).Cells(Lrow, 2).Value = LastName Sheets(5).Cells(Lrow, 3).Value = Blood Sheets(5).Cells(Lrow, 4).Value = Position Sheets(5).Cells(Lrow, 5).Value = Gender Sheets(5).Cells(Lrow, 6).Value = Division End Sub
Code: Select all
Dim Lrow As Integer
Lrow = Sheets(5).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
ครับผม พอเข้าใจอยู่ครับ ขอบคุณมากครับpuriwutpokin wrote:Dim Lrow As Integer เป็นการประกาศตัวแปร ให้ โปรแกรมรับทราบครับ Integer ประกาศเป็นจำนวนเต็มหรือตัวเลข ประมาณนี้ครับ
โดยให้ Lrow เท่ากับ ค่าช่วงของชีทที่5 โดยนับช่วง ที่ Cells(Rows.Count, 1) ไปตำแหน่งสุดท้ายแล้ว นับถัดลงไป 1 Row, Offset(1, 0).Row ประมาณนี้ ต้องอาศัย แกะและTest ดูครับ ผมไม่ได้เรียนมาอธิบายได้เท่านี้เองครับ