Page 1 of 1
Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Thu Sep 28, 2017 11:20 am
by sasilakmon
ต้องการ copy ข้อมูลจาก Sheet ที่ชื่อว่า "Standard Services BANGKOK" ในคอลัมภ์ C22-AK22 ทุกแถวที่มีข้อมูล Post Code, Employee Name or ID Number และวันที่มีชั่วโมงการทำงาน มาไว้ที่ Sheet2 ขณะนี้ทำถึง copy มาแค่บรรทัดแรกบรรทัดเดียว ต้องการ copy ข้อมูลมาทุกแถวที่มีข้อมูล หลังจากนั้น ทำการเช็คข้อมูลซ้ำใน Sheet2
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Thu Sep 28, 2017 9:49 pm
by snasui

ตัวอย่าง Code ครับ
Code: Select all
Dim rAll As Range, r As Range
With Sheets("Standard Services BANGKOK")
Set rAll = .Range("c22", .Range("c" & .Rows.Count).End(xlUp))
For Each r In rAll
If InStr(r, "-") And r.Offset(0, 1).Value <> "" Then
r.Resize(1, 35).Copy
With .Application.Sheets("Sheet2")
.Range("a" & .Rows.Count).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
End With
End If
Next r
End With
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Fri Sep 29, 2017 8:28 am
by sasilakmon
ขอบคุณมากๆนะคะ เดี๋ยวจะลองดูนะคะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Fri Sep 29, 2017 8:38 am
by sasilakmon
snasui wrote:
ตัวอย่าง Code ครับ
Code: Select all
Dim rAll As Range, r As Range
With Sheets("Standard Services BANGKOK")
Set rAll = .Range("c22", .Range("c" & .Rows.Count).End(xlUp))
For Each r In rAll
If InStr(r, "-") And r.Offset(0, 1).Value <> "" Then
r.Resize(1, 35).Copy
With .Application.Sheets("Sheet2")
.Range("a" & .Rows.Count).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
End With
End If
Next r
End With
copy ข้อมูลได้แล้วค่ะ ขอบคุณมากๆนะคะ
แล้วถ้าเราจะตรวจสอบข้อมูลซ้ำละคะโดยเอา column B+ column AI จะได้ 50899D เพื่อทำเป็น index แล้วเอามาตรวจสอบข้อมูลซ้ำ รบกวนอีกครั้งค่ะ ขอบคุณมากๆนะคะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Mon Oct 02, 2017 10:09 pm
by snasui

ได้เขียน Code สำหรับการทำเช่นนั้นมาแล้วหรือไม่ ติดขัดบรรทัดใด หากยังไม่เขียน จำเป็นต้องเขียนมาเองก่อน ติดขัดตรงไหนค่อยมาดูกันต่อครับ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Wed Oct 11, 2017 5:29 pm
by sasilakmon
จากไฟล์ที่แนบมา ถ้าต้องการ count ข้อมูลโดยนับตามรหัสพนักงานที่มีข้อมูลในแต่ละวัน เช่น รหัส 50000 มีวันทำงานในวันที่ 1 ก็จะได้ 500001 ถ้ามีวันที่ 2 ก็จะได้ 500002 รหัส 60000 มีวันทำงานก็คิดเหมือนกัน รบกวนแนะนำด้วยค่ะ ขอบคุณค่ะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Thu Oct 12, 2017 6:19 am
by snasui

จากไฟล์ที่แนบมาให้แสดงค่าที่ชีตใด เซลล์ใด ชวยกรอกตัวอย่างคำตอบมาในตำแหน่งที่ต้องการด้วยจะได้เข้าใจตรงกันครับ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Thu Oct 12, 2017 9:27 am
by sasilakmon
จากไฟล์ที่แนบมาต้องการ copy ข้อมูลจาก Sheet2 ไป sheet 'Summary' โดยเซลล์ B คือรหัสพนักงานต้องมีข้อมูล + วันทำงานที่มีข้อมูลในแต่ละเซลล์ค่ะ ตัวอย่างข้อมูลที่ต้องการตาม sheet Summary ค่ะ รบกวนแนะนำด้วยนะคะ ขอบคุณค่ะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Thu Oct 12, 2017 6:11 pm
by snasui

ตัวอย่างสูตรครับ
- Sheet2 เซลล์ AJ2 คีย์คำว่า "Count" เพื่อเป็นหัวคอลัมน์
- Sheet2 เซลล์ AJ3 คีย์สูตร
=COUNT(C3:AG3)
Enter > Copy ลงด้านล่าง
- ชีต Summary เซลล์ B1 คีย์
=IF(ROWS(B$1:B1)>SUM(Sheet2!$AJ$3:$AJ$5),"",LOOKUP(ROWS(B$1:B1),SUBTOTAL(9,OFFSET(Sheet2!$AJ$3,0,0,ROW(Sheet2!$AJ$3:$AJ$5)-ROW(Sheet2!$AJ$3)+1))-SUBTOTAL(9,OFFSET(Sheet2!$AJ$3,ROW(Sheet2!$AJ$3:$AJ$5)-ROW(Sheet2!$AJ$3),0))+1,Sheet2!$B$3:$B$5))
Enter > Copy ลงด้านล่าง
- ชีต Summary เซลล์ A1 คีย์
=IF(B1="","",B1&"D"&INDEX(Sheet2!$C$2:$AG$2,SMALL(IF(INDEX(Sheet2!$C$3:$AG$5,MATCH(B1,Sheet2!$B$3:$B$5,0),0),COLUMN(Sheet2!$C$2:$AG$2)-COLUMN(Sheet2!$C$2)+1),COUNTIF(B$1:B1,B1))))
Ctrl+Shift+Enter > Copy ลงด้านล่าง กรุณาอ่าน Note ด้านล่างอย่างละเอียด ไม่เช่นนั้นจะไม่ได้คำตอบครับ
!
| Note: Ctrl+Shift+Enter เป็นการสร้างสูตร Array โดยสามารถเลือกดำเนินการตามข้อ 1 หรือ 2 ด้านล่าง
- กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
- กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน จากนั้นกดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วตามด้วย Enter เพื่อสร้างเป็นสูตร Array
- หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้ไม่สามารถคีย์เข้าไปเอง จะต้องมาด้วยการกดแป้น Ctrl+Shift+Enter เท่านั้น ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
- การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง
|
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Fri Oct 13, 2017 9:51 am
by sasilakmon
ทำได้แล้วค่ะ ขอบคุณมากๆนะคะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Fri Oct 13, 2017 10:59 am
by sasilakmon
ขอสอบถามเพิ่มเติมค่ะ ถ้าเราจะเขียนเป็น code vba สามารถทำได้ไหมคะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Fri Oct 13, 2017 11:02 am
by snasui

VBA เป็นการเขียนโปรแกรม ย่อมสามารถทำได้ทุกอย่างขึ้นอยู่กับความสามารถของผู้ใช้ กรณีต้องการคำตอบเป็น VBA จำเป็นต้องเขียนมาเองก่อนเสมอตามกฎการใช้บอร์ดข้อ 5 ด้านบน ติดตรงไหนค่อยถามกันต่อครับ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Tue Oct 17, 2017 1:36 pm
by sasilakmon
จากไฟล์ที่แนบมาลองเขียน vba แล้ว แต่ยังไม่ได้ข้อมูลตามที่ต้องการ รบกวนแนะนำด้วยนะคะ ขอบคุณค่ะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Tue Oct 17, 2017 4:57 pm
by sasilakmon
จากไฟล์ที่แนบมา ลองทำแล้วแต่ข้อมูลรหัสพนักงานกับวันที่มีข้อมูลใน cell ยังไม่ได้ตามที่ต้องการค่ะ ข้อมูลที่ต้องการคือ
50899D1
50899D2
50899D3
ตามจำนวนวันที่มีข้อมูลการทำงานค่ะ
รบกวนแนะนำด้วยนะคะ ขอบคุณค่ะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Tue Oct 17, 2017 8:51 pm
by snasui

ตัวอย่าง Code ครับ
Code: Select all
Sub copydata()
Dim r As Range, c As Range
Dim iCount As Integer
Sheets("Summary").Range("a:a").ClearContents
With Sheets("Sheet2")
Set r = .Range("b3:ag" & .Rows.Count).SpecialCells(xlCellTypeConstants, 1)
For Each c In r
If c <> "" Then
With Sheets("Summary")
.Range("a1").Value = "Results"
.Range("a" & .Rows.Count).End(xlUp).Offset(1, 0).Value = c.Parent.Cells( _
c.Row, 2).Value & "D" & c.Parent.Cells(2, c.Column).Value
End With
End If
Next c
End With
End Sub
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Wed Oct 18, 2017 12:22 pm
by sasilakmon
ขอบคุณค่ะ เดี๋ยวจะลองทำดูนะคะ
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Wed Oct 18, 2017 1:11 pm
by sasilakmon
ทำได้แล้วค่ะ แต่ยังติดปัญหาการแสดงผลของข้อมูลดังต่อไปนี้ค่ะ ที่ไม่มีวันแต่ยังแสดงอยู่ในไฟล์ได้ไฮไลท์สีเหลืองไว้นะคะ รบกวนอีกครั้งนะคะ ขอบคุณค่ะ
50899D
51555D
385594D
334651D
334651D
334651D
334651D
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Wed Oct 18, 2017 10:36 pm
by snasui

ตัวอย่าง Code ครับ
Code: Select all
'Other code
Set r = .Range("c3:ag" & .Rows.Count).SpecialCells(xlCellTypeConstants, 1)
'Other code
Re: Copy ข้อมูลและตรวจสอบข้อมูลซ้ำใน Excel
Posted: Thu Oct 19, 2017 9:02 am
by sasilakmon
ได้แล้วค่ะ ขอบคุณมากๆนะคะ