Page 1 of 1

ขอวิธีการย้ายข้อมูล

Posted: Sun Sep 14, 2014 5:14 pm
by Chanon.witt
สวัสดีครับ พี่ๆ และอาจารย์ทุกท่าน
ขอออกต้วก่อนเลยว่าผมเป็นเด็กใหม่พึงมาใช้ excel ได้ประมาณ 2 เดือน และเริ่มมีความสนใจอยู่เลยทำอ่านความรู้จาก เวป ต่างๆ และนำมาประยุกใช้กับงานของตัวเอง :D
วันนี้มาขอความช่วยเหลือครับ
ผมจะให้คนกรอกข้อมูลในหน้า Op และ กด บันทึก เพื่อ นำข้อมูล C5:D82 ไปไว้ใน หน้า Report Date (C6:D83) แล้วเมื่อ คนต่อไปมาก็ให้ นำข้อมูลจาก Op มาที่ Report Date แต่จะขยับไป ช่องต่อไปเรื่อยๆ คือ ตอนนี้ ผมทำมั่วๆ จากความรู้ที่อ่านมาได้ แค่นี้( สามารถนำข้อมูลมาได้แค่บรรทัดแรก แล้ถ้ากดอีกทีมันบันทึกซ้ำที่เดิมไม่เลื่อนไปเรื่อยๆ ) พี่ๆ อาจารย์ ช่วยแนะนำต่อด้วยนะครับ ขอบพระคุณล่วงหน้าครับ

ปล. ขอโทษนะครับผมอาจจะ อธิบายไม่ค่อยรู้เรื่องเท่าไร T T

Re: ขอวิธีการย้ายข้อมูล

Posted: Sun Sep 14, 2014 5:27 pm
by snasui
:D จากไฟล์ที่แนบมา ช่วยทำตัวอย่างคำตอบที่ต้องการมาด้วย จะได้เข้าใจตรงกันว่าข้อมูลต้นทางเป็นอย่างไรและต้องการข้อมูลปลายทางเป็นอย่างไรครับ

Re: ขอวิธีการย้ายข้อมูล

Posted: Sun Sep 14, 2014 11:34 pm
by Chanon.witt
:oops: ขอโทษอาจารย์ด้วยนะครับ ผมพูดไม่รู้เรื่องจริงๆด้วย ผมเลยทำ รูปเป็นขั้นเป็นตอนมาให้ดู อาจจะเข้าใจมาขึ้นครับ

http://image.ohozaa.com/view2/xQkG4jbo11zpwWzq
http://image.ohozaa.com/view2/xQkGeeAtXollF0ec
http://image.ohozaa.com/view2/xQkGlG8NUCiRYHpD
http://image.ohozaa.com/view2/xQkGspJLiD3kikkx


รบกวนด้วยนะครับ ^^

Re: ขอวิธีการย้ายข้อมูล

Posted: Sun Sep 14, 2014 11:39 pm
by snasui
:D ให้แนบภาพมาที่ฟอรัมนี้แทนที่จะฝากไว้ที่เว็บอื่นครับ

Re: ขอวิธีการย้ายข้อมูล

Posted: Mon Sep 15, 2014 12:31 pm
by Chanon.witt
:D

Re: ขอวิธีการย้ายข้อมูล

Posted: Mon Sep 15, 2014 12:40 pm
by Chanon.witt
^^

Re: ขอวิธีการย้ายข้อมูล

Posted: Mon Sep 15, 2014 3:14 pm
by snasui
:D ตัวอย่างการปรับ Code ตามด้านล่างครับ

Code: Select all

Sub test0()
    Dim source As Range
    Dim target As Range
    
    With Sheets("Op")
        Set source = .Range("c5:d82")
    End With
    With Sheets("Report date")
        If .Range("c5") = "" Then
            Set target = .Range("c5")
        Else
            Set target = .Cells(5, .Columns.Count).End(xlToLeft).Offset(0, 2)
        End If
    End With
    target.Value = Now
    target.Offset(1, 0).Resize(source.Rows.Count, _
        source.Columns.Count).Value = source.Value
End Sub

Re: ขอวิธีการย้ายข้อมูล

Posted: Tue Sep 16, 2014 11:09 pm
by Chanon.witt
ขอบพระคุณอาจารย์มากครับ

Re: ขอวิธีการย้ายข้อมูล

Posted: Thu Sep 18, 2014 3:27 pm
by BTR
ในกรณีที่ต้องการเปลี่ยนแนวการแสดงข้อมูลต่อเนื่องไปทางด้านขวา เป็นการแสดงข้อมูลต่อเนื่องไปทางด้านล่างแทน
ต้องปรับcode อย่างไรครับ?

ตามที่อาจารยแนะนำเดิม
Set target = .Cells(5, .Columns.Count).End(xlToLeft).Offset(0, 2)

ผลลองปรับตรงนี้แล้ว ไม่เป็นผลครับ
Set target = .Cells(5, .Rows.Count).End(xlToDown).Offset(79, 0)

เพราะเมื่อกดบันทึกคร้้งที่ 3,4,... ข้อมูลจะไปบันทึกซ้ำพื้นที่ ที่กดบันทึกครั้งที่ 2


...ขออนุญาตใช้ข้อมูลของเจ้าของข้อมูล/กระทู้นะครับ

Re: ขอวิธีการย้ายข้อมูล

Posted: Thu Sep 18, 2014 5:41 pm
by snasui
:D ตัวอย่างการปรับ Code ตามด้านล่างครับ

Code: Select all

'Other code
With Sheets("Report date")
    If .Range("c5") = "" Then
        Set target = .Range("c5")
    Else
        Set target = .Range("d" & .Rows.Count).End(xlUp).Offset(1, -1)
    End If
End With
'Other code

Re: ขอวิธีการย้ายข้อมูล

Posted: Fri Sep 19, 2014 12:11 am
by BTR
ขอบคุณอาจารย์ครับ สามารถนำไปปรับใช้กับงานที่อยู่ระหว่างสร้างได้พอดีเลย

ขอบคุณ คุณ Chanon.witt เจ้าของกระทู้ด้วยครับ