创建VBA以进行复制并添加工作表2,同时在第一个工作表1中复制粘贴行

时间:2017-04-14 12:55:10

标签: excel excel-vba excel-formula excel-2010 vba

问题。

在第一张表中插入复制的行时,我需要一个VBA代码来复制完整的工作表。 例如: 第一张;第A1行:N1有公式,它们与表2结合。

现在将行A1:N1复制到A2:N2这个模块需要复制工作表2并在其后插入。将所有公式与第A2行中的行组合起来:N2来自表格1 ..

依旧......

甚至可能吗?

WP sample 1 WPS samples 2

WP样本1&#34 ;;

第A14行和第34行; WPS 1"链接到"工作表WPS1" (WPS样本2) 第A15行和第34行; WPS 2"链接到"工作表WPS2"

- 我想创建" WPS 3",所以我要复制A 14行并将此信息粘贴在A 15下。

此VBA需要复制"工作表" WPS1"并在工作表" WPS2"之后发布此副本。

因此它创建了WPS3,这需要在其中具有与#34; WPS1"

相同的公式 先进的thnx。

米奇

1 个答案:

答案 0 :(得分:0)

您可以尝试类似的程序:

Public Sub copyWPS1asNew()
    Dim NameInput As String 
RequestName:
    NameInput = Application.InputBox(Prompt:="Type new name of the WPS.", Title:="WPS Name", Default:="WPS2", Type:=2) 'type:=2 is String

    'check if the name is taken
    Dim Ws As Worksheet
    For Each Ws In Worksheets
        If Ws.Name = NameInput Then
            MsgBox "That name is already taken. Try a different one.", vbExclamation, "Try different name"
            GoTo RequestName
        End If
    Next

    'create new sheet
    Dim NewWs As Worksheet
    Worksheets("WPS1").Copy After:=Worksheets(Worksheets.Count)
    Set NewWs = Worksheets(Worksheets.Count)
    NewWs.Name = NameInput
End Sub

也许需要一些定制的tweek。希望这能让你开始。
检查名称是否参与可以进入自定义功能,以使代码更可重用。