【问题标题】:Excel VBA code to allow the user to choose the same cell on every sheetExcel VBA 代码允许用户在每张工作表上选择相同的单元格
【发布时间】:2014-01-23 04:29:12
【问题描述】:

我需要我的用户能够在工作簿的每张 32 张纸上选择相同的单元格),但我不能让他们进入代码来更改它。代码需要保持保护。我已经看到指示使用 shift 键突出显示所有选项卡的帖子,然后在一张纸上选择适当的单元格,并在所有其他纸上选择相应的单元格。这种方法的问题是其他工作表的相关区域不一定可见,用户仍然需要滚动。

我发现了一些我可以修改以满足我的需要的代码,它很容易更改单元格引用,但我需要用户能够在不进入代码的情况下这样做。

Sub GoToSelectCellOnEverySheet()

Dim i As Long

For i = 1 To 32
Worksheets(i).Activate

Range("A1").Select

Next i

Worksheets(1).Activate

End Sub

我发现了一些我认为可以修改的东西,但这只是在我尝试引用用户输入的地方。我已经尝试了该行代码的各种变体,但无济于事。我不知道我是否遗漏了一些简单的东西,或者我的方法是否完全有缺陷。到了就死了

Range.("rRange").Select

任何帮助将不胜感激。谢谢!

Sub RangeDataType()

Dim rRange As Range

    On Error Resume Next

        Application.DisplayAlerts = False

            Set rRange = Application.InputBox(Prompt:= _
                "Please Select A Cell", _
                    Title:="SPECIFY RANGE", Type:=8)

    On Error GoTo 0

        Application.DisplayAlerts = True

        If rRange Is Nothing Then

            Exit Sub

        Else

Dim i As Long

For i = 1 To 32

Worksheets(i).Activate

Range.("rRange").Select

Next i

Worksheets(1).Activate

        End If

End Sub

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    尝试做这样的事情:

    Set rRange = Application.InputBox(Prompt:= _
                "Please Select A Cell", _
                    Title:="SPECIFY RANGE", Type:=8)
    
    If rRange Is Nothing Then Exit Sub
    
    Dim i As Long
    For i = 1 To 32
        Worksheets(i).Activate
        Range(rRange.Address).Select
    Next i
    

    【讨论】:

    • 完美。显然我的学习曲线非常陡峭,但我很高兴这很简单。非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多