【发布时间】:2020-01-16 20:20:18
【问题描述】:
我有一个 excel 文件(它是一个长记分表),它运行一个脚本,告诉文件显示文件的顶部,几秒钟后文件向下移动,并显示底部边缘Excel 文件。这个 excel 文件是一个琐事之夜的评分表,我正在尝试将 excel 文件放在谷歌表中,以便评委可以实时输入分数。现在我在表格中有文件,所以这很好,但是当我从 excel 文件中复制脚本并将其放入谷歌脚本编辑器时,我在尝试保存或运行脚本时不断收到错误消息。 (缺少 ; before 语句。(第 1 行,文件“代码”)解雇)
以下是两个示例。第一个示例是直接从 excel 文件复制的脚本,第二个示例是脚本在 google 脚本编辑器中的样子。有什么想法可以让这个脚本正常工作和运行吗? ' 示例 1:
Private Sub CommandButton1_Click()
Call scrollPage
End Sub
Sub scrollPageForced()
Dim rowStart As Integer
Dim rowMax As Integer
rowStart = 3 'The first row index to scroll to
'rowMax = 41 'The maximum row to scroll to (that will be visible )
rowMax = ActiveSheet.Range("AA2").Value
Dim MyW As Window
Dim rowI As Integer
Set MyW = Windows(1)
rowI = MyW.VisibleRange.Cells.Row + (MyW.VisibleRange.Cells.Rows.Count - 1)
If rowI > rowMax Then rowI = rowStart
Range("A" + CStr(rowI)).Select
Application.Goto Reference:=ActiveCell, Scroll:=True
Range("BB" + CStr(rowI)).Select 'Hide selection by selecting a bogus element on the SAME ROW
ActiveWindow.SmallScroll ToLeft:=100 'Scroll back left to A (BB ==44)
Application.OnTime Now + TimeValue("00:00:" + CStr(ActiveSheet.Range("AC2").Value)), "!Sheet1.scrollPage"
End Sub
Sub scrollPage()
If ActiveSheet.Range("K2").Value <> 1 Then Call scrollPageForced
End Sub
示例 2:
Private Sub Command Button1_Click()
Call scrollPage
End Sub
Sub scrollPageForced()
Dim rowStart As Integer
Dim rowMax As Integer
rowStart = 3 'The first row index to scroll to
'rowMax = 41 'The maximum row to scroll to (that will be visible )
rowMax = ActiveSheet.Range("AA2").Value
Dim MyW As Window
Dim rowI As Integer
Set MyW = Windows(1)
rowI = MyW.VisibleRange.Cells.Row + (MyW.VisibleRange.Cells.Rows.Count - 1)
If rowI > rowMax Then rowI = rowStart
Range("A" + CStr(rowI)).Select
Application.Goto Reference:=ActiveCell, Scroll:=True
Range("BB" + CStr(rowI)).Select 'Hide selection by selecting a bogus element on the SAME ROW
ActiveWindow.SmallScroll ToLeft:=100 'Scroll back left to A (BB ==44)
Application.OnTime Now + TimeValue("00:00:" + CStr(ActiveSheet.Range("AC2").Value)), "!Sheet1.scrollPage"
End Sub
Sub scrollPage()
If ActiveSheet.Range("K2").Value <> 1 Then Call scrollPageForced
End Sub
【问题讨论】:
标签: excel vba google-apps-script google-sheets