Page 1 of 1
ต้องการให้เลข 1-12 รันในขนาดของแถวที่กำหนด แล้วปัดขึ้นไปรันต่อที่คอลัมน์ถัดไปครับ
Posted: Sun Jun 19, 2022 10:57 pm
by 10idlnw
ผมต้องการให้เลข 1-12 รันในขนาดของแถวที่กำหนด โดยเริ่มต้นที่ ActiveCell ที่กำหนด แล้วปัดขึ้นไปรันต่อที่คอลัมน์ถัดไปครับ ต้องปรับสูตรยังไงครับ
Code: Select all
Sub runNumber()
Dim rng As Range
Set rng = ActiveCell
Dim i As Integer
For i = 1 To 12
rng.Offset(i * 1, 0).Value = i
Next i
End Sub
2022-06-19_22-49-46.jpg
2022-06-19_22-53-44.jpg
Re: ต้องการให้เลข 1-12 รันในขนาดของแถวที่กำหนด แล้วปัดขึ้นไปรันต่อที่คอลัมน์ถัดไปครับ
Posted: Mon Jun 20, 2022 12:00 am
by 10idlnw
ผลลองหาวิธีให้มันรันตัวเลขตามจำนวนแถวที่กำหนดได้แล้ว แต่ผมไม่รู้ว่า ถ้าให้เริ่ม ณ ActiveCell ที่เรากำหนด จะต้องปรับโค้ดเพิ่มเติมยังไงครับ
Code: Select all
Sub MyNumber()
Const nCols As Integer = 20
Const nRows As Integer = 10
Dim iRow As Integer
For iRow = 1 To nCols
Dim i As Integer
i = (iRow - 1) \ nRows + 1
Dim j As Integer
j = iRow - nRows * (i - 1)
Cells(i, j).Value = iRow
Next iRow
End Sub
Re: ต้องการให้เลข 1-12 รันในขนาดของแถวที่กำหนด แล้วปัดขึ้นไปรันต่อที่คอลัมน์ถัดไปครับ
Posted: Mon Jun 20, 2022 7:15 am
by snasui
10idlnw wrote: Mon Jun 20, 2022 12:00 am
ถ้าให้เริ่ม ณ ActiveCell ที่เรากำหนด จะต้องปรับโค้ดเพิ่มเติมยังไงครับ

ปรับ
Cells(i, j).Value = iRow
เป็น
ActiveCell.Offset(i - 1, j - 1).Value = iRow
ครับ
Re: ต้องการให้เลข 1-12 รันในขนาดของแถวที่กำหนด แล้วปัดขึ้นไปรันต่อที่คอลัมน์ถัดไปครับ
Posted: Mon Jun 20, 2022 9:34 am
by 10idlnw
ขอบคุณครับอาจารย์ ทดสอบแล้วทำงานได้ตามต้องการครับ