简体   繁体   English

复制范围从CSV到Excel错误的宏

[英]Macro to copy range from CSV to excel error

Can you please correct the below code where I am able to execute the first part but then getting error for the second and third part.Need to copy range from csv to excel. 您能在我能够执行第一部分的地方更正下面的代码,但是第二和第三部分却出错了。需要将范围从csv复制到excel。 I am able to copy from B2:B10 from CSv to A2 in excel but C2:C10 and D2:D10 is failing. 我可以将B2:B10从CSv复制到Excel中的A2,但C2:C10和D2:D10失败。

Sub Copy_Paste()
Const csvFile = "C:pathname\filename.csv"
Dim ws As Worksheet, csv As Workbook

Set ws = ThisWorkbook.Sheets("Sheet2")
Workbooks.Open csvFile

'Copying B2:B10 from CSV file to A2 in xl file
Set csv = ActiveWorkbook
cName = csv.Name
ActiveSheet.Range("B2:B10").Copy
ws.Activate
ws.Range("A2").PasteSpecial xlPasteValues

'Copying C2:C10 from CSV file to G2 in xl file
Set csv = ActiveWorkbook
cName = csv.Name
ActiveSheet.Range("C2:C10").Copy
ws.Activate
ws.Range("G2").PasteSpecial xlPasteValues

'Copying D2:D10 from CSV file to Y2 in xl file
Set csv = ActiveWorkbook
cName = csv.Name
ActiveSheet.Range("D2:D10").Copy
ws.Activate
ws.Range("Y2").PasteSpecial xlPasteValues


End Sub

when pasting just values it is quicker to simply equate the two ranges. 当仅粘贴值时,将两个范围简单等价会更快。

Sub Copy_Paste()

Const csvFile = "C:pathname\filename.csv"

Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet2")

Dim csv As Workbook
Set csv = Workbooks.Open(csvFile)

Dim csvws As Worksheet
Set csvws = csv.Worksheets(1)

ws.Range("A2:C10").Value = csvws.Range("B2:D10").Value

End Sub

If your ranges are not congruent then use multiple lines, one for each congruent area: 如果您的范围不一致,则使用多行,每个一致区域用一行:

Sub Copy_Paste()

Const csvFile = "C:pathname\filename.csv"

Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet2")

Dim csv As Workbook
Set csv = Workbooks.Open(csvFile)

Dim csvws As Worksheet
Set csvws = csv.Worksheets(1)

ws.Range("A2:A10").Value = csvws.Range("B2:B10").Value
ws.Range("B2:B10").Value = csvws.Range("C2:C10").Value
ws.Range("C2:C10").Value = csvws.Range("D2:D10").Value

End Sub

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM