vba Excel在另一个sub中使用声明的变量

时间:2015-10-14 16:04:36

标签: excel vba excel-vba

我在这里尝试做的是使用我声明的" vSelection"在另一个Sub但它似乎没有工作。也许有人可以帮助我吗?

这是我宣布的地方。

Public Sub cmdBladeren_Click()

Dim vSelection As Variant
vSelection = Application.GetOpenFilename("Graphics files (*.gif), *.gif")

If vSelection = False Then
MsgBox "Selecteer een foto!"
Exit Sub
End If

End Sub

这是我想用它的地方

Private Sub btnOK_Click()

Dim rngRange As Range
Dim rngProduct As Range
Dim lTop As Long
Dim lLeft As Long
Dim oShape As Shape   

Set rngRange = Range("C2:O100")

For intteller = 1 To 7000

If rngRange.Cells(intteller).Interior.Color = RGB(146, 208, 80) Then
    Set rngProduct = rngRange.Cells(intteller)
    rngProduct.Interior.Color = RGB(193, 130, 67)
    lTop = rngProduct.Top
    lLeft = rngProduct.Left

    Set oShape = ActiveSheet.Shapes.AddPicture(vSelection, True, True,   lLeft, lTop, 100, 192)

rngProduct.Offset(1, 0).Value = Me.txtNaamProduct.Value
Exit For
Else
End If

Next
Unload frmNieuwProduct

End Sub

1 个答案:

答案 0 :(得分:1)

您需要了解变量的范围

范围如何声明变量

仅限过程 - 在使用变量

的过程中使用Dim或Static语句

仅模块 - 在模块中的第一个Sub或Function语句之前使用Dim语句

所有模块中的所有过程 - 通过在模块中的第一个Sub或Function语句之前使用Public语句