【问题标题】:Autofilter (Excel VBA to Google Spreadsheet) [duplicate]自动过滤器(Excel VBA 到 Google 电子表格)[重复]
【发布时间】:2013-04-17 20:26:28
【问题描述】:

我有一个包含以下代码的 Excel 电子表格。我想将此电子表格转换并上传到谷歌驱动器电子表格。谁能帮我将 VBA 代码转换为谷歌应用程序脚本?谢谢!

Sub Filter1()

'Assigned to Keyboard Shortcut Ctrl + Q
ActiveSheet.AutoFilterMode = False 'Initializes the Filter
ActiveSheet.Range("$D$2:$AZ$500").AutoFilter Field:=ActiveCell.Column - 3, Criteria1:="<>" 'Applies filter and criteria (blanks)

End Sub

【问题讨论】:

  • 我对 VBA 不太熟悉,请您补充说明它的作用。 The Google Spreadsheet Class Document 是你的朋友,它解释了对你有帮助的方法。
  • 嘿 vletech。感谢您的评论。这是解释 - 数据包含在“D2:AZ500”范围内,标题在“D2:AZ2”范围内。数据包含数字和空格。执行代码时,1)它对范围应用过滤器,2)它从包含活动单元格的列中过滤掉空白......例如,如果单元格选择 K50 并执行代码,它在 D2:AZ500 上应用过滤器并过滤掉 K 列中的空白。希望我说得通。如果没有,我可以制作一个小视频来展示代码的作用。谢谢!

标签: google-apps-script google-sheets


【解决方案1】:

您分享的 VBA 脚本示例的两个方面无法在 apps-script 中实现:

  • 虽然 Google 电子表格确实具有类似于 Excel 的自动过滤功能,但没有 API 可以通过应用程序脚本对其进行控制。
  • 不支持键盘快捷键编程(您没有包含将 Ctrl + Q 映射到 Filter1() 的代码,但在 cmets 中提到了)。

您可以考虑其他选择。例如,您可以创建一个菜单驱动的函数,该函数将在单独的工作表上生成源数据的过滤版本。用户将导航到源数据中感兴趣的单元格,从自定义菜单调用“过滤器”功能,该功能将继续根据当前“活动”单元格过滤数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-16
    • 2019-03-17
    • 2014-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-30
    相关资源
    最近更新 更多