Selecting a given 'number' of columns...
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 274   1
URL.หัวข้อ / URL
Selecting a given 'number' of columns...

ช่วงนี้ผมต้องส่งข้อมูลจาก Access ไปยัง Excel เพื่อสร้าง Chart หรือสรุปผลในรูปแบบที่ Excel ถนัด และได้ไปอ่านเจอกระทู้ของต่างประเทศที่เขาต้องการจะทำงานคล้ายๆ กับสิ่งที่ผมทำอยู่ คือ หาตำแหน่งคอลัมน์สุดท้ายใน Excel เพื่อจะนำไปใช้ในการระบุ Range เพื่อเขียนเป็น Chart
ที่ http://www.access-programmers.co.uk/forums/showthread.php?s=&threadid=45187

เขาสามารถที่จะนับจำนวน Fields ที่ส่งออกไปจาก Access ได้ แต่อยากรู้ว่าคอลัมน์ใน Excel จะอยู่ตำแหน่งใด ที่เขาใช้อยู่คือใช้ Select Case ซึ่งจะเขียนโค้ดยาวมาก ดังนี้

Select Case ColumnCount

Case 30
last_Column = "AD"
Case 31
last_Column = "AE"
...
Case 50
last_Column = "AX"

end case

selectRegion = "A1:" & last_Column & "2"

ผมเลยลองเขียนฟังก์ชันขึ้นมาแทน Select Case นี้ แบบนี้ครับ

Function GetRange(intX As Integer) As String
Dim intY As Integer
If intX < 27 Then
GetRange = Chr(64 + intX)
Else
intY = intX Mod 26
intX = intX \ 26
GetRange = Chr(64 + intX) & Chr(64 + intY)
End If
End Function

ลองทดลองแบบนี้

? GetRange(50)
AX

เวลาใช้ก็ให้ตัดส่วน Select Case ออก แล้วเปลี่ยนเป็น

selectRegion = "A1:" & GetRange(ColumnCount ) & "2"




1 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R06714
   
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.1163s