Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.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
Vba 使用仪表板复制特定列中的特定行,并将其粘贴到不同的excel文档中_Vba_Excel_Merge_Dashboard - Fatal编程技术网

Vba 使用仪表板复制特定列中的特定行,并将其粘贴到不同的excel文档中

Vba 使用仪表板复制特定列中的特定行,并将其粘贴到不同的excel文档中,vba,excel,merge,dashboard,Vba,Excel,Merge,Dashboard,在我的excel电子表格中,我有一个基本控制一切的master。在这个母版中,我有一个页面,允许我选择一个xlsx文件,然后在下拉列表中,它允许我选择所选文件中我要使用的页面。[此部分工作正常,但…] 我正在努力解决的是以下问题,用户必须能够规定数据开始的行、结束的行以及数据所在的列 例如: 数据开始的行7 数据以25结尾的行 数据G的列 数据代码D的列 使用这些信息,我需要excel来提取数据,并将其复制到用户选择的另一个电子表格中,然后将它们合并在一起 列以输入数据H 列的标题(代码必须使用

在我的excel电子表格中,我有一个基本控制一切的master。在这个母版中,我有一个页面,允许我选择一个xlsx文件,然后在下拉列表中,它允许我选择所选文件中我要使用的页面。[此部分工作正常,但…]

我正在努力解决的是以下问题,用户必须能够规定数据开始的行、结束的行以及数据所在的列

例如:

数据开始的行7 数据以25结尾的行 数据G的列 数据代码D的列

使用这些信息,我需要excel来提取数据,并将其复制到用户选择的另一个电子表格中,然后将它们合并在一起

列以输入数据H 列的标题(代码必须使用用户的输入命名)标题 数据代码E的列

合并数据时,必须将数据与“数据代码”匹配


提前感谢

听起来好像你在要求我们设计你的程序

  • 用户必须能够规定数据开始的行、结束的行以及数据所在的列。示例:“数据开始的行7数据结束的行数据代码D的数据G列的25列

  • 用户选择的另一个电子表格(工作簿?)

只有你知道你的用户会发现什么是方便的,以及什么与你现有的代码相匹配

  Option Explicit
  Sub Test()

  Dim CopyRange As Range
  Dim reply As Long

  Do While True
    Err.Clear
    On Error Resume Next
    Set CopyRange = Application.InputBox(Prompt:="Select ranges to be copied", _
                                         Type:=8)
    On Error GoTo 0
    If CopyRange Is Nothing Then
      reply = MsgBox(Prompt:="Do you wish to exit without copying a range?", _
                     Buttons:=vbYesNo)
      If reply = vbYes Then
        ' User wants to exit
        Exit Sub
      End If
      ' Loop for another go
    Else
      ' User had entered a valid range
      Exit Do
    End If
  Loop

  Debug.Print CopyRange.Address

  End Sub
您告诉我们您已经打开了另一个工作簿,因此您知道如何跨多个工作簿工作

在我看来,复制数据最简单的命令是:

SourceRange.Copy Destination:=TopLeftCellOfDestinationRange

以上内容将为您的宏的下一部分提供一个开始。如果您有问题,请返回有关不符合您要求的代码的具体问题。请不要提供模糊要求的列表。

您的问题是…?您尝试了什么?您遇到了什么问题?我已经能够在we选择文件并将其激活,同时显示所选文件中的工作表。但是,我不确定如何对其余部分进行编码