今天也在勤劳工作呀 2023-05-28 16:48 采纳率: 50%
浏览 50
已结题

【提问】excel单表格自动循环滚屏的vba代码

excel中的一个长表格需要投屏到LED上,想要实现自动循环滚屏播放,但不影响其它sheet,有没有vba可以实现的代码,放置窗体控件也可以,搞一天了没搞出来😭

  • 写回答

1条回答 默认 最新

  • 北海屿鹿 2023-05-29 08:41
    关注

    以下是一个基于VBA的代码示例,可以实现Excel中一个长表格的自动循环滚屏播放,同时不影响其他sheet。你可以将代码复制到Excel的VBA编辑器中,然后在该工作簿中添加一个窗体控件(如CommandButton),并将其绑定到该代码的Sub过程中。

    Private Sub CommandButton1_Click()
        Dim i As Long, j As Long, k As Long
        Dim rowHeight As Double, screenHeight As Double
        Dim rowCount As Long, screenCount As Long
    
        '设置滚动速度,单位为毫秒
        Const scrollSpeed = 100
    
        '获取当前sheet的行数和屏幕高度
        rowCount = ActiveSheet.UsedRange.Rows.Count
        screenHeight = Application.UsableHeight
    
        '计算需要滚动的屏幕数
        screenCount = rowCount / screenHeight
        If rowCount Mod screenHeight > 0 Then
            screenCount = screenCount + 1
        End If
    
        '循环滚动
        For i = 1 To screenCount
            '计算当前屏幕的起始行和结束行
            j = (i - 1) * screenHeight + 1
            k = i * screenHeight
            If k > rowCount Then k = rowCount
    
            '设置当前屏幕的行高
            rowHeight = screenHeight / (k - j + 1)
            For l = j To k
                ActiveSheet.Rows(l).RowHeight = rowHeight
            Next l
    
            '等待一段时间
            Application.Wait Now + scrollSpeed / 1000 / 24 / 60 / 60
    
            '滚动到下一屏幕
            ActiveWindow.ScrollRow = k
        Next i
    
        '恢复所有行的行高
        For i = 1 To rowCount
            ActiveSheet.Rows(i).RowHeight = -1
        Next i
    End Sub
    

    该代码会根据当前sheet的行数和屏幕高度,计算需要滚动的屏幕数,并循环滚动每个屏幕。在每个屏幕中,会将该屏幕内的所有行的行高设置为相同的值,以实现滚动效果。在滚动过程中,代码会等待一段时间,以控制滚动速度。最后,代码会恢复所有行的行高,以确保不影响其他sheet。

    你可以根据需要修改代码中的滚动速度和窗口控件的名称。希望这可以帮助你实现自动循环滚屏播放。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月7日
  • 已采纳回答 5月30日
  • 创建了问题 5月28日

悬赏问题

  • ¥30 电脑误删了手机的照片怎么恢复?
  • ¥15 (标签-python|关键词-char)
  • ¥15 python+selenium,在新增时弹出了一个输入框
  • ¥15 苹果验机结果的api接口哪里有??单次调用1毛钱及以下。
  • ¥20 学生成绩管理系统设计
  • ¥15 来一个cc穿盾脚本开发者
  • ¥15 CST2023安装报错
  • ¥15 使用diffusionbert生成文字 结果是PAD和UNK怎么办
  • ¥15 有人懂怎么做大模型的客服系统吗?卡住了卡住了
  • ¥20 firefly-rk3399上启动卡住了