EXCEL TOOLS
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
[code]
และปิดด้วย [/code]
ตัวอย่างเช่น [code]dim r as range[/code]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)ปุ่ม Paste คือ ปุ่ม Record Data ครับtheeranart wrote:คือผมไปเพิ่มชื่อพนักงานใหม่ ชื่อ Theeranart และใส่ข้อมูลใน Sheet HRprofile แล้วทำไมเมื่อมาหน้า Form มันจึงหาข้อมูลของชื่อนี้ไม่เจอครับ
2.ผมหาปุ่ม Paste ใน Form ไม่พบ
3.ลำดับการคีย์ข้อมูลคือ
3.1 Sheet HRprofile 3.2 Sheet Form เท่านั้นใช่ไหมครับ
4.Factor มีความหมายว่าอย่างไรครับ
Code: Select all
[code]Sub PasteData()
Dim i As Integer
Dim rSource As Range
Dim rTarget As Range
i = Worksheets("Form").Range("D6").Value
With Worksheets("Template")
Set rSource = .Range(.Range("A2"), .Range("M" & i + 1))
End With
With Worksheets("Database")
Set rTarget = .Range("A65536").End(xlUp).Offset(1, 0)
End With
Application.ScreenUpdating = False
rSource.Copy
rTarget.PasteSpecial xlPasteValues
Application.CutCopyMode = False
Application.ScreenUpdating = False
MsgBox "Paste Finish"
Worksheets("PivotReport").PivotTables("PivotTable1"). _
PivotCache.Refresh
End Sub
Code: Select all
Sub PasteData()
Dim i As Integer
Dim rSource As Range
Dim rTarget As Range
On Error Resume Next
i = Worksheets("Form").Range("D6").Value
With Worksheets("Template")
Set rSource = .Range(.Range("A2"), .Range("M" & i + 1))
End With
With Worksheets("Database")
Set rTarget = .Range("A65536").End(xlUp).Offset(1, 0)
End With
Application.ScreenUpdating = False
Dim msg As Byte
msg = MsgBox(prompt:="Edit data click ""Yes"", Add data click ""No"".", _
Buttons:=vbYesNo, Title:="Edit or Replace?")
rSource.Copy
If msg = vbNo Then
rTarget.PasteSpecial xlPasteValues
Else
Dim lng As Long
lng = Application.Match(Sheets("Form").Range("C2"), _
Sheets("Database").Range("C:C"), 0)
If Err > 0 Then
MsgBox "You can't edit data, please try again."
Exit Sub
End If
Sheets("Database").Range("A" & lng).PasteSpecial xlPasteValues
End If
Application.CutCopyMode = False
Application.ScreenUpdating = False
MsgBox "Paste Finish"
Worksheets("PivotReport").PivotTables("PivotTable1"). _
PivotCache.Refresh
End Sub