【问题标题】:Prompt User to Select a File Path on Cell Selection in Excel提示用户在 Excel 中的单元格选择中选择文件路径
【发布时间】:2013-08-23 03:26:51
【问题描述】:

我有一个工作表,可以将一堆文件下载到用户在单元格中指定的位置。我想做的是向该单元格添加验证,以便在单击它时打开文件选择窗口,并且用户能够指定所需的位置。这甚至可能吗?我知道它可以通过按钮触发的宏来完成,但我真的希望它更像其他类型的验证一样工作,例如下拉菜单。

任何指向正确方向的人都将不胜感激...非计算机类型在输入无错误路径时遇到的麻烦比您想象的要多。

【问题讨论】:

  • 查看 Worksheet_SelectionChange 事件和 Application.GetOpenFileName 方法

标签: excel vba validation


【解决方案1】:

将此粘贴​​在 Workbook 对象中。或者,如果它是特定工作表,则将其粘贴在工作表对象中并将事件更改为相关工作表之一 - 这将节省一些 CPU 周期,因为它只会在相关工作表上触发事件。

Public SelectedPath As String
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Dim desiredCell As Range
    Set desiredCell = Worksheets("Sheet1").Cells(1, 1) 'whatever
    If Target.Address(external:=True) = desiredCell.Address(external:=True) Then
        With Application.FileDialog(msoFileDialogFolderPicker)
            .AllowMultiSelect = False
            .ButtonName = "Select destination"
            .Title = "Select destination folder"
            .Show
            If .SelectedItems.Count > 0 Then
                SelectedPath = .SelectedItems(1)
                Target.Value = SelectedPath
            End If
        End With
        'do some more stuff or let your other code access the SelectedPath field
    End If
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-11
    • 1970-01-01
    • 1970-01-01
    • 2020-04-30
    • 2019-05-30
    • 2017-10-24
    • 1970-01-01
    相关资源
    最近更新 更多