:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

ต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
kio2002
Member
Member
Posts: 177
Joined: Thu Sep 20, 2012 8:40 am

ต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา

#1

Post by kio2002 »

เรียน สมาชิกทุกท่าน
ผมต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา
ชีทหลักของผมก็คือชีท"หน้าหลัก"
เมื่อรันโค้ด sub BOQ() อันดับแรกจะให้ตรวจสอบเซลล์ C44 ที่ชีทหน้าหลักก่อน หากไม่เท่ากับค่าว่าง จะให้ exit sub ทันที
หากเป็นค่าว่างก็ให้รันโค้ดตามปกติ
โดยเริ่มcopyข้อมูลจากคอลัมน์ B,C,D,Eแถวที่13ของชีทหน้าหลัก แล้วนำไปวางที่คอลัมน์ B:C,D,E,Fแถวที่12 ของชีทBOQแบบเรียงลำดับลงมาเรื่อยๆตามลำดับครับ ตามที่ผมเข้าใจน่าจะต้องใช้การ loop แต่ลองรันโค้ดแล้วมันcopyมาแค่แถวเดียว คือแถวบนสุด
โค้ดที่ติดปัญหาอยู่ตรงนี้ครับ

Code: Select all

Sub BOQ()
    Dim sh As Worksheet
        With Sheets("หน้าหลัก")
            If .Range("c44").Value <> "" Then
                MsgBox "ช่องบันทึกรายการสินค้าเต็ม ไม่สามารถเพิ่มรายการได้"
                Exit Sub
        End If
        End With
    Worksheets("BOQ").Range("A12:F29").ClearContents
    For Each sh In Worksheets
            With Worksheets("BOQ")
                 .Range("B12").Offset(Application.CountA(.Range("B12:B" & .Rows.Count)), 0).Value = sh.Range("B13").Offset(Application.CountA(.Range("B13:B" & .Rows.Count)), 0).Value
                 .Range("D12").Offset(Application.CountA(.Range("D12:D" & .Rows.Count)), 0).Value = sh.Range("C13").Offset(Application.CountA(.Range("C13:C" & .Rows.Count)), 0).Value
                 .Range("E12").Offset(Application.CountA(.Range("E12:E" & .Rows.Count)), 0).Value = sh.Range("D13").Offset(Application.CountA(.Range("D13:D" & .Rows.Count)), 0).Value
                 .Range("F12").Offset(Application.CountA(.Range("F12:F" & .Rows.Count)), 0).Value = sh.Range("E13").Offset(Application.CountA(.Range("E13:E" & .Rows.Count)), 0).Value
            End With
    Next sh
    MsgBox "Sent To BOQ Complete"
End Sub
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30744
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา

#2

Post by snasui »

:D ตัวอย่างการปรับ Code ครับ

Code: Select all

Sub BOQ()
    Dim sh As Worksheet, rw As Long
    With Sheets("หน้าหลัก")
        rw = .Range("b13", .Range("b13").End(xlDown)).Rows.Count
        If .Range("c44").Value <> "" Then
            MsgBox "ช่องบันทึกรายการสินค้าเต็ม ไม่สามารถเพิ่มรายการได้"
            Exit Sub
        End If
    End With
'    Worksheets("BOQ").Range("A12:F29").ClearContents
'    For Each sh In Worksheets
    With Worksheets("BOQ")
        .Range("a12:f29").ClearContents
'            .Range("B12").Offset(Application.CountA(.Range("B12:B" & .Rows.Count)), 0).Value = sh.Range("B13").Offset(Application.CountA(.Range("B13:B" & .Rows.Count)), 0).Value
'            .Range("D12").Offset(Application.CountA(.Range("D12:D" & .Rows.Count)), 0).Value = sh.Range("C13").Offset(Application.CountA(.Range("C13:C" & .Rows.Count)), 0).Value
'            .Range("E12").Offset(Application.CountA(.Range("E12:E" & .Rows.Count)), 0).Value = sh.Range("D13").Offset(Application.CountA(.Range("D13:D" & .Rows.Count)), 0).Value
'            .Range("F12").Offset(Application.CountA(.Range("F12:F" & .Rows.Count)), 0).Value = sh.Range("E13").Offset(Application.CountA(.Range("E13:E" & .Rows.Count)), 0).Value
        .Range("a12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("a13").Resize(rw).Value
        .Range("b12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("b13").Resize(rw).Value
        .Range("d12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("c13").Resize(rw).Value
        .Range("e12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("d13").Resize(rw).Value
        .Range("f12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("e13").Resize(rw).Value
    End With
'    Next sh
    MsgBox "Sent To BOQ Complete"
End Sub
kio2002
Member
Member
Posts: 177
Joined: Thu Sep 20, 2012 8:40 am

Re: ต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา

#3

Post by kio2002 »

เรียน อาจารย์ snasui
ผมได้นำโค้ดไปทดลองแล้ว ใช้ได้ตามต้องการครับ

พอดีผมอยากให้เติมเส้นขอบเป็นสี่เหลี่ยมในแต่ละเซลล์เรียงลงมาจนถึงข้อความสุดท้ายของคอลัมน์นั้น
ลองเขียนโค้ดแล้ว เจอปัญหา
1 โปรแกรมเติมเส้นขอบแค่แถวล่างสุดแค่แถวเดียว
2 โปรแกรมสร้างหน้าให้อัตโนมัติถึง 14,769 หน้า ทำให้ไฟล์มีขนาดใหญ่ถึง 19.2mb และรันโค้ดได้ช้ามาก

โค้ดที่ติดปัญหาจุดที่ 1

Code: Select all

        ' ลบข้อความ และทำเส้นขอบให้เป็นสีขาว
        .Range("a12:f43").ClearContents
        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = 0
        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
        .Range("c12", Range("c12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
        .Range("c12", Range("c12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
โค้ดที่ติดปัญหาจุดที่ 2

Code: Select all

        ' เติมเส้นขอบสี เป็นกรอบสีเหลี่ยมในแต่ละเซลล์
        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505

        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505

        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505

        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505

        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505
รูปตารางที่อยากได้ประมาณนี้ครับ
Image
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30744
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา

#4

Post by snasui »

:D ตัวอย่างการปรับ Code ครับ

Code: Select all

Sub BOQ()
    Dim sh As Worksheet, rw As Long
    Dim r As Range
    Application.ScreenUpdating = False
    With Sheets("หน้าหลัก")
        rw = .Range("b13", .Range("b13").End(xlDown)).Rows.Count
        If .Range("c44").Value <> "" Then
            MsgBox "ช่องบันทึกรายการสินค้าเต็ม ไม่สามารถเพิ่มรายการได้"
            Exit Sub
        End If
    End With
    With Worksheets("BOQ")
        ' ลบข้อความ และทำเส้นขอบให้เป็นสีขาว
        .Range("a12:f43").ClearContents
'        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = 0
'        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
'        .Range("c12", Range("c12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
'        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
'        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
'        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = 0
'        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
'        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
'        .Range("c12", Range("c12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
'        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
'        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
'        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = 0
'
        
        .Range("a12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("a13").Resize(rw).Value
        .Range("b12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("b13").Resize(rw).Value
        .Range("d12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("c13").Resize(rw).Value
        .Range("e12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("d13").Resize(rw).Value
        .Range("f12").Resize(rw).Value = Worksheets("หน้าหลัก").Range("e13").Resize(rw).Value
        
        For Each r In .Range("a12:f12").Resize(rw)
            r.Borders(xlEdgeTop).TintAndShade = -0.14996795556505
            r.Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
            r.Borders(xlEdgeRight).TintAndShade = -0.14996795556505
            r.Borders(xlEdgeLeft).TintAndShade = -0.14996795556505
        Next r
        ' เติมเส้นขอบให้เป็นสีเป็นกรอบสีเหลี่ยมในแต่ละเซลล์
'        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
'        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
'        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
'        .Range("a12", Range("a12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505
'
'        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
'        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
'        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
'        .Range("b12", Range("b12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505
'
'        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
'        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
'        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
'        .Range("d12", Range("d12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505
'
'        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
'        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
'        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
'        .Range("e12", Range("e12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505
'
'        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeTop).TintAndShade = -0.14996795556505
'        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeBottom).TintAndShade = -0.14996795556505
'        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeRight).TintAndShade = -0.14996795556505
'        .Range("f12", Range("f12").End(xlDown)).Borders(xlEdgeLeft).TintAndShade = -0.14996795556505
        
        Application.ScreenUpdating = True
        MsgBox "Sent To BOQ Complete"
        .Select
    End With
End Sub

kio2002
Member
Member
Posts: 177
Joined: Thu Sep 20, 2012 8:40 am

Re: ต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา

#5

Post by kio2002 »

เรียนอาจารย์ snasui
ผมได้นำโค้ดไปทดสอบแล้ว โค้ดอาจารย์สุดยอดเลยครับ ใช้ได้ผลดีเลยครับ
ขอบคุณมากๆครับ

ผมรบกวนอาจารย์อธิบายเรื่องการใช้ Resize ให้หน่อยครับ
ถ้าตามที่ผมเข้าใจ จะนำมาใช้ในกรณีที่เซลล์ต้นทาง หรือปลายทางมีการผสานเซลล์ใช่ไหมครับ


และก็ผมขอนุญาตใช้กระทู้นี้สอบถามเรื่องโค้ดอื่นเพิ่มเติมได้ไหมครับ หรือต้องตั้งกระทู้ใหม่
โค้ดที่จะสอบถามอาจารย์
ผมต้องการให้เปิด userform กรณีที่มีการดับเบิ้ลคลิกที่เซลล์ระหว่าง C13:C44 หากเซลล์นั้นๆมีค่าว่างก็ให้เปิด userform
หากไม่มีค่าว่างก็ไมต้องดำเนินการใดๆ
เนื่องจากเซลล์มีจำนวนเยอะ ถ้าเขียนโค้ดที่ละเซลล์ จะค่อนข้างเยอะมาก จึงอยากเขียนโค้ดให้สั้นกว่านี้ครับ

โค้ดที่ผมเขียนไว้ประมาณนี้ครับ

Code: Select all

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Address = Range("C13").Address Then
        If range("C13").Value = "" Then
            UserForm1.Show
        Cancel = True
        End If
    End If
    If Target.Address = Range("C14").Address Then
        If Range("C14").Value = "" Then
            UserForm1.Show
        Cancel = True
        End If
    End If
    If Target.Address = Range("C15").Address Then
        If Range("C15").Value = "" Then
            UserForm1.Show
        Cancel = True
        End If
    End If
End Sub
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30744
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา

#6

Post by snasui »

kio2002 wrote: Fri Sep 30, 2022 4:52 pm ผมรบกวนอาจารย์อธิบายเรื่องการใช้ Resize ให้หน่อยครับ
ถ้าตามที่ผมเข้าใจ จะนำมาใช้ในกรณีที่เซลล์ต้นทาง หรือปลายทางมีการผสานเซลล์ใช่ไหมครับ
:D เป็นการขยายขอบเขตข้อมูล ใน Resize จะต้องระบุจำนวนบรรทัดหรือคอลัมน์ เช่น .Resize(5,2) แปลว่าขยายไป 5 บรรทัด 2 คอลัมน์, .Resize(,8) หมายถึงขยายไป 8 คอลัมน์ส่วนของเดิมมีกี่บรรทัดก็ใช้ตามนั้น, .Resize(10) แปลว่าขยายไป 10 บรรทัด (ไม่ได้ระบุคอลัมน์)
kio2002 wrote: Fri Sep 30, 2022 4:52 pm และก็ผมขอนุญาตใช้กระทู้นี้สอบถามเรื่องโค้ดอื่นเพิ่มเติมได้ไหมครับ หรือต้องตั้งกระทู้ใหม่
กรณีไม่เกี่ยวข้องกับคำถามเดิมกรุณาตั้งกระทู้ใหม่ครับ
kio2002
Member
Member
Posts: 177
Joined: Thu Sep 20, 2012 8:40 am

Re: ต้องการcopyข้อมูลจากชีทหลักไปยังอีกชีทที่กำหนดแบบเรียงลำดับลงมา

#7

Post by kio2002 »

snasui wrote: Fri Sep 30, 2022 7:58 pm
kio2002 wrote: Fri Sep 30, 2022 4:52 pm ผมรบกวนอาจารย์อธิบายเรื่องการใช้ Resize ให้หน่อยครับ
ถ้าตามที่ผมเข้าใจ จะนำมาใช้ในกรณีที่เซลล์ต้นทาง หรือปลายทางมีการผสานเซลล์ใช่ไหมครับ
:D เป็นการขยายขอบเขตข้อมูล ใน Resize จะต้องระบุจำนวนบรรทัดหรือคอลัมน์ เช่น .Resize(5,2) แปลว่าขยายไป 5 บรรทัด 2 คอลัมน์, .Resize(,8) หมายถึงขยายไป 8 คอลัมน์ส่วนของเดิมมีกี่บรรทัดก็ใช้ตามนั้น, .Resize(10) แปลว่าขยายไป 10 บรรทัด (ไม่ได้ระบุคอลัมน์)
kio2002 wrote: Fri Sep 30, 2022 4:52 pm และก็ผมขอนุญาตใช้กระทู้นี้สอบถามเรื่องโค้ดอื่นเพิ่มเติมได้ไหมครับ หรือต้องตั้งกระทู้ใหม่
กรณีไม่เกี่ยวข้องกับคำถามเดิมกรุณาตั้งกระทู้ใหม่ครับ
ได้ตั้งกระทู้ใหม่แล้วครับ ขอบคุณครับ
Post Reply