मेरे पास वर्तमान में कोड है जो ठीक काम करता है और 1 शीट की प्रतिलिपि बनाते समय सही डेटा चिपकाता है, हालांकि अब मैं चाहता हूं कि यह 3 अलग-अलग चादरों से डेटा खींचे, प्रत्येक शीट को एक बड़े डेटा सेट के रूप में अगले एक के नीचे चिपकाएं। नीचे वह कोड है जिसका मैंने उपयोग करने का प्रयास किया, हालांकि .Range(LastRow) पर रुक जाता है

Sub PipelineData()

Dim Fname As String
Dim SrcWbk As Workbook
Dim DestWbk As Workbook

Set DestWbk = ThisWorkbook

Fname = Application.GetOpenFilename(FileFilter:="Excel Files (*.xls*), *.xls*", Title:="Select a File")
If Fname = "False" Then Exit Sub
Set SrcWbk = Workbooks.Open(Fname)

On Error Resume Next

Sheets("BID").ShowAllData
Sheets("DELIVERY").ShowAllData
Sheets("Complete or Cancelled").ShowAllData

On Error GoTo 0

SrcWbk.Sheets("BID").Range("A3:AP200").Copy DestWbk.Sheets("Pipeline").Range("A1")

SrcWbk.Sheets("DELIVERY").Range("A3:AP200").Copy DestWbk.Sheets("Pipeline").Range(LastRow)

SrcWbk.Sheets("Complete or Cancelled").Range("A3:AP200").Copy DestWbk.Sheets("Pipeline").Range(LastRow)

SrcWbk.Close False

End Sub
0
Hsmith 17 मार्च 2020, 17:17

1 उत्तर

सबसे बढ़िया उत्तर
Sub PipelineData()

Dim Fname As String
Dim SrcWbk As Workbook
Dim DestWbk As Workbook

Set DestWbk = ThisWorkbook

Fname = Application.GetOpenFilename(FileFilter:="Excel Files (*.xls*), *.xls*", Title:="Select a File")
If Fname = "False" Then Exit Sub
Set SrcWbk = Workbooks.Open(Fname)

On Error Resume Next

Sheets("BID").ShowAllData
Sheets("DELIVERY").ShowAllData
Sheets("Complete or Cancelled").ShowAllData

On Error GoTo 0

SrcWbk.Sheets("BID").Range("A3:AP200").Copy DestWbk.Sheets("Pipeline").Range("A1")
dim lastrow as long
with DestWbk.Sheets("Pipeline")
    lastrow = .cells(.rows.count, 1).end(xlup).row 'Get last row
    SrcWbk.Sheets("DELIVERY").Range("A3:AP200").Copy .Range("A" & LastRow)
    lastrow = .cells(.rows.count, 1).end(xlup).row 'Get new last row
    SrcWbk.Sheets("Complete or Cancelled").Range("A3:AP200").Copy .Range("A" & LastRow)
end with
SrcWbk.Close False

End Sub
0
Warcupine 17 मार्च 2020, 15:05