Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用vbscript将一张图纸上的行复制到另一张图纸上_Vbscript - Fatal编程技术网

如何使用vbscript将一张图纸上的行复制到另一张图纸上

如何使用vbscript将一张图纸上的行复制到另一张图纸上,vbscript,Vbscript,假设我在excel中有表(1)。现在我也有2500行,其中包含从A到BO的列的数据。现在我希望数据从这些工作表复制到同一Excel文件的另一个工作表中的2500行,而不是整个列,而我只需要从A到AA数据的列复制到新工作表 那么,如何使用VBscript构建它呢 请帮帮我 如何使用vbscript将数据行从一张图纸复制到另一张图纸要将数据从一张图纸复制到另一张图纸,可以使用“复制粘贴”特殊命令。要使用.vbs脚本执行此操作,请执行以下操作: ' Create Excel object Set ob

假设我在excel中有表(1)。现在我也有2500行,其中包含从A到BO的列的数据。现在我希望数据从这些工作表复制到同一Excel文件的另一个工作表中的2500行,而不是整个列,而我只需要从A到AA数据的列复制到新工作表

那么,如何使用VBscript构建它呢

请帮帮我


如何使用vbscript将数据行从一张图纸复制到另一张图纸要将数据从一张图纸复制到另一张图纸,可以使用“复制粘贴”特殊命令。要使用
.vbs
脚本执行此操作,请执行以下操作:

' Create Excel object
Set objExcel = CreateObject("Excel.Application")
' Open the workbook
Set objWorkbook = objExcel.Workbooks.Open _
    ("C:\myworkbook.xlsx")
' Set to True or False, whatever you like
objExcel.Visible = True

' Select the range on Sheet1 you want to copy 
objWorkbook.Worksheets("Sheet1").Range("A1:AA25").Copy
' Paste it on Sheet2, starting at A1
objWorkbook.Worksheets("Sheet2").Range("A1").PasteSpecial
' Activate Sheet2 so you can see it actually pasted the data
objWorkbook.Worksheets("Sheet2").Activate 

如果要在Excel中使用VBS宏执行此操作,还可以调用复制和粘贴方法。只有工作簿对象类似于
ActiveWorkbook

要将数据从一张工作表复制到另一张工作表,可以使用copy-pasten特殊命令。要使用
.vbs
脚本执行此操作,请执行以下操作:

' Create Excel object
Set objExcel = CreateObject("Excel.Application")
' Open the workbook
Set objWorkbook = objExcel.Workbooks.Open _
    ("C:\myworkbook.xlsx")
' Set to True or False, whatever you like
objExcel.Visible = True

' Select the range on Sheet1 you want to copy 
objWorkbook.Worksheets("Sheet1").Range("A1:AA25").Copy
' Paste it on Sheet2, starting at A1
objWorkbook.Worksheets("Sheet2").Range("A1").PasteSpecial
' Activate Sheet2 so you can see it actually pasted the data
objWorkbook.Worksheets("Sheet2").Activate 
Sub buildMissingSheet(strMissingSheet)  'Just passing the missing sheet name in

' Master Sheet code
' Working on creating the "Master Sheet" at this time...May need to seperate the the code a little.
Dim GetRows1    As Worksheet
Dim GetRows2    As Worksheet
Dim PutRows     As Worksheet
Dim sglRowNum   As Single, i%


If strMissingSheet = strMASTERSHEET Then ' Create the strMASTERSHEET

  Set GetRows1 = Sheets(strRAWDATA)      ' These two sheets could be missing but will code around that later.
  Set GetRows2 = Sheets(strDATAWITH)     ' The two sheets I am getting rows from
如果要在Excel中使用VBS宏执行此操作,还可以调用复制和粘贴方法。只有工作簿对象类似于
ActiveWorkbook

Sub buildMissingSheet(strMissingSheet)  'Just passing the missing sheet name in

' Master Sheet code
' Working on creating the "Master Sheet" at this time...May need to seperate the the code a little.
Dim GetRows1    As Worksheet
Dim GetRows2    As Worksheet
Dim PutRows     As Worksheet
Dim sglRowNum   As Single, i%


If strMissingSheet = strMASTERSHEET Then ' Create the strMASTERSHEET

  Set GetRows1 = Sheets(strRAWDATA)      ' These two sheets could be missing but will code around that later.
  Set GetRows2 = Sheets(strDATAWITH)     ' The two sheets I am getting rows from
'只需在此处创建一个新的工作表,假设它已丢失 Worksheets.Add(之后:=工作表(5)).Name=strMissingSheet Set PutRows=Sheets(strMissingSheet)'声明前必须创建缺少的工作表

  PutRows.Select  'Select the sheet being built.

  With Cells(1, 1)
     .Value = strRAWDATA  'Not copying rows here but left it in this example anyway
    .AddComment
    .Comment.Visible = False
    .Select
    .Comment.Text Text:= _
       Chr(10) & "Name of sheet including header and the last 32 entries at the time this sheet was updated."
  End With
'这里是我们将整行从一张纸复制到另一张纸的地方

  GetRows1.Rows(1).Copy PutRows.Rows(2)  'Copy header row from existing sheet to "Master Sheet" for instance.
  GetRows1.Select
  sglRowNum = ReturnLastRow(ActiveSheet.Cells)  'return last row with data on active sheet
我想要最后几行数据“32行”,所以在工作表的末尾可以找到这段代码,可以在互联网上的几个地方找到,包括这个网站

'现在,您可能正在寻找的代码将32行数据从一个工作表移动到另一个工作表

  For i = 1 To 32  'Start at row 3 on the Put sheet after sheet name and header.
     GetRows1.Rows(sglRowNum - (32 - i)).Copy PutRows.Rows(i + 2)
  Next i
端接头

'只需在此处创建一个新的工作表,假设它已丢失 Worksheets.Add(之后:=工作表(5)).Name=strMissingSheet Set PutRows=Sheets(strMissingSheet)'声明前必须创建缺少的工作表

  PutRows.Select  'Select the sheet being built.

  With Cells(1, 1)
     .Value = strRAWDATA  'Not copying rows here but left it in this example anyway
    .AddComment
    .Comment.Visible = False
    .Select
    .Comment.Text Text:= _
       Chr(10) & "Name of sheet including header and the last 32 entries at the time this sheet was updated."
  End With
'这里是我们将整行从一张纸复制到另一张纸的地方

  GetRows1.Rows(1).Copy PutRows.Rows(2)  'Copy header row from existing sheet to "Master Sheet" for instance.
  GetRows1.Select
  sglRowNum = ReturnLastRow(ActiveSheet.Cells)  'return last row with data on active sheet
我想要最后几行数据“32行”,所以在工作表的末尾可以找到这段代码,可以在互联网上的几个地方找到,包括这个网站

'现在,您可能正在寻找的代码将32行数据从一个工作表移动到另一个工作表

  For i = 1 To 32  'Start at row 3 on the Put sheet after sheet name and header.
     GetRows1.Rows(sglRowNum - (32 - i)).Copy PutRows.Rows(i + 2)
  Next i

end sub

此代码工作正常。只需复制并粘贴它

Dim CopyFrom As  Object
Dim CopyTo As Object
Dim CopyThis As Object
Dim xl As Object

xl = CreateObject("Excel.Application")
xl.Visible = False
CopyFrom = xl.Workbooks.Open("E:\EXCEL\From.xls")
CopyTo = xl.Workbooks.Open("E:\EXCEL\To.xls")
For i = 0 To 1
    ''To use a password: Workbooks.Open Filename:="Filename", Password:="Password"
    If i = 0 Then
        CopyThis = CopyFrom.Sheets(1)
        CopyThis.Copy(After:=CopyTo.Sheets(CopyTo.Sheets.Count))
        CopyTo.Sheets(3).Name = "Sheet3"
    Else
        CopyThis = CopyFrom.Sheets(2)
        CopyThis.Copy(After:=CopyTo.Sheets(CopyTo.Sheets.Count))
        CopyTo.Sheets(4).Name = "Sheet4"
    End If
Next
CopyTo.Sheets(1).Activate()
CopyTo.Save()
'CopyTo.SaveAs("E:\EXCEL\Check.xls")
xl.Quit()

此代码运行良好。只需复制并粘贴它

Dim CopyFrom As  Object
Dim CopyTo As Object
Dim CopyThis As Object
Dim xl As Object

xl = CreateObject("Excel.Application")
xl.Visible = False
CopyFrom = xl.Workbooks.Open("E:\EXCEL\From.xls")
CopyTo = xl.Workbooks.Open("E:\EXCEL\To.xls")
For i = 0 To 1
    ''To use a password: Workbooks.Open Filename:="Filename", Password:="Password"
    If i = 0 Then
        CopyThis = CopyFrom.Sheets(1)
        CopyThis.Copy(After:=CopyTo.Sheets(CopyTo.Sheets.Count))
        CopyTo.Sheets(3).Name = "Sheet3"
    Else
        CopyThis = CopyFrom.Sheets(2)
        CopyThis.Copy(After:=CopyTo.Sheets(CopyTo.Sheets.Count))
        CopyTo.Sheets(4).Name = "Sheet4"
    End If
Next
CopyTo.Sheets(1).Activate()
CopyTo.Save()
'CopyTo.SaveAs("E:\EXCEL\Check.xls")
xl.Quit()

这也很有用-这也很有用-开始格式化代码-失去耐心;-)请编辑并改进(代码行需要4个前导空格)开始格式化代码-失去耐心;-)请编辑并改进(代码行需要4个前导空格)