Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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
Excel 我的VBA代码在将一张图纸复制到另一张图纸时会跳转到userform mid宏,即使代码没有';我不能口述这个_Excel_Vba_Copy_Userform - Fatal编程技术网

Excel 我的VBA代码在将一张图纸复制到另一张图纸时会跳转到userform mid宏,即使代码没有';我不能口述这个

Excel 我的VBA代码在将一张图纸复制到另一张图纸时会跳转到userform mid宏,即使代码没有';我不能口述这个,excel,vba,copy,userform,Excel,Vba,Copy,Userform,“我的宏”在将一张图纸复制到另一张图纸时运行userform initialize宏。在第一张纸上,我有一个启动userform的按钮,我的宏将这个按钮和数据一起复制到下一张纸上。宏以前工作得很好,但是现在userform按钮似乎从userform调用初始化子对象,即使代码中没有调用它。复制工作表时会发生这种情况。下面是代码 Sub ExampleSUB() 'Delete Sheets After Sheet Dim i As Long Dim j As Long

“我的宏”在将一张图纸复制到另一张图纸时运行userform initialize宏。在第一张纸上,我有一个启动userform的按钮,我的宏将这个按钮和数据一起复制到下一张纸上。宏以前工作得很好,但是现在userform按钮似乎从userform调用初始化子对象,即使代码中没有调用它。复制工作表时会发生这种情况。下面是代码

Sub ExampleSUB()

'Delete Sheets After Sheet

    Dim i As Long
    Dim j As Long
    Dim WS As Worksheet
Dim StartCell As Range
Dim Myvalue As String

    j = 0
    For i = 1 To Sheets.Count
        If Sheets(i).Name = "ABC" Then
            j = i
        End If
    Next i

    If j = 0 Or j = Sheets.Count Then
    End If

    Application.DisplayAlerts = False
        For i = Sheets.Count To j + 1 Step -1
            Sheets(i).Delete
        Next i
    Application.DisplayAlerts = True


Myvalue = "Example"

'Create New Sheet
Set WS = Sheets.Add(after:=Sheets(Worksheets.Count))
    WS.Name = Myvalue

'If Sheet is VeryHidden
Dim WasHidden

    Application.ScreenUpdating = False
    If Sheets("total BU cost per product").Visible = xlSheetVeryHidden Then
        Sheets("total BU cost per product").Visible = xlSheetVisible
        WasHidden = True
    End If
在下一节中调用initialize sub

    Sheets("total BU cost per product").Select
    Cells.Select
    Selection.Copy
    Sheets(Myvalue).Select
    Range("A1").Select
    ActiveSheet.Paste
下面是它神秘调用的userform的代码:

Private Sub UserForm_Initialize()

With ListBox1
    .AddItem "Denmark"
    .AddItem "Sweden"
    .AddItem "Norway"
    .AddItem "Finland"
    .AddItem "Luxembourg"
    .AddItem "Germany"
    .AddItem "UK"
    .AddItem "Finland"
End With

OptionButton3.Value = True

End Sub
下面通过调用userform

private sub showuserform ()
selection.show
end sub
但是当我运行代码(F8)时,它似乎并没有调用showuserform子函数

以下是我使用的userform的链接:


为什么它会自动运行userform sub?

我建议从如何避免使用select开始,因为这是一种糟糕的做法。谢谢。这能解决我的问题吗?你知道为什么我的宏突然调用userform吗?我不明白为什么。你能给我们完整的代码吗?因为这只是您的复制粘贴操作。触发因素可能在别处。请包括链接到调用用户表单的按钮的代码。