Page 1 of 1
ขอวิธีการย้ายข้อมูล
Posted: Sun Sep 14, 2014 5:14 pm
by Chanon.witt
สวัสดีครับ พี่ๆ และอาจารย์ทุกท่าน
ขอออกต้วก่อนเลยว่าผมเป็นเด็กใหม่พึงมาใช้ excel ได้ประมาณ 2 เดือน และเริ่มมีความสนใจอยู่เลยทำอ่านความรู้จาก เวป ต่างๆ และนำมาประยุกใช้กับงานของตัวเอง
วันนี้มาขอความช่วยเหลือครับ
ผมจะให้คนกรอกข้อมูลในหน้า Op และ กด บันทึก เพื่อ นำข้อมูล C5:D82 ไปไว้ใน หน้า Report Date (C6:D83) แล้วเมื่อ คนต่อไปมาก็ให้ นำข้อมูลจาก Op มาที่ Report Date แต่จะขยับไป ช่องต่อไปเรื่อยๆ คือ ตอนนี้ ผมทำมั่วๆ จากความรู้ที่อ่านมาได้ แค่นี้( สามารถนำข้อมูลมาได้แค่บรรทัดแรก แล้ถ้ากดอีกทีมันบันทึกซ้ำที่เดิมไม่เลื่อนไปเรื่อยๆ ) พี่ๆ อาจารย์ ช่วยแนะนำต่อด้วยนะครับ ขอบพระคุณล่วงหน้าครับ
ปล. ขอโทษนะครับผมอาจจะ อธิบายไม่ค่อยรู้เรื่องเท่าไร T T
Re: ขอวิธีการย้ายข้อมูล
Posted: Sun Sep 14, 2014 5:27 pm
by snasui
จากไฟล์ที่แนบมา ช่วยทำตัวอย่างคำตอบที่ต้องการมาด้วย จะได้เข้าใจตรงกันว่าข้อมูลต้นทางเป็นอย่างไรและต้องการข้อมูลปลายทางเป็นอย่างไรครับ
Re: ขอวิธีการย้ายข้อมูล
Posted: Sun Sep 14, 2014 11:34 pm
by Chanon.witt
Re: ขอวิธีการย้ายข้อมูล
Posted: Sun Sep 14, 2014 11:39 pm
by snasui
ให้แนบภาพมาที่ฟอรัมนี้แทนที่จะฝากไว้ที่เว็บอื่นครับ
Re: ขอวิธีการย้ายข้อมูล
Posted: Mon Sep 15, 2014 12:31 pm
by Chanon.witt
Re: ขอวิธีการย้ายข้อมูล
Posted: Mon Sep 15, 2014 12:40 pm
by Chanon.witt
^^
Re: ขอวิธีการย้ายข้อมูล
Posted: Mon Sep 15, 2014 3:14 pm
by snasui
ตัวอย่างการปรับ 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
ตัวอย่างการปรับ 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 เจ้าของกระทู้ด้วยครับ