我正在通过创建一个包含三个按钮而不是三个要查看的标签的工作表来简化工作表。
这是工作簿。
https://dl.dropbox.com/u/3327208/Excel/Archives.xlsx
我试图做的是,每个按钮对应一个特定的标签,它最终将调整每个字段以适合每个标签中的每个相应列。归档1需要与归档2或3不同的格式。
现在这将是一个简单的复制和粘贴概念,但我想要做的是两件事使得它比基本脚本更复杂,因为我可以创建一个删除列的脚本,并将数据粘贴到单元格中但是我会使用一个滚动条,而且我不能用相同的命令删除它,或者它可以吗?这就是我要找的......
- 如何创建滚动条,所有数据都与之对应
将使用所述活动数据,所以如果我按下第一个按钮全部
屏幕上的数据将对应于存档1,因此也是如此
滚动条。如果我按下按钮2,数据和滚动条将会
对应档案2等......
让滚动条的相关行数 与之交互将始终对应于最后一行,因此没有 当滚动条碰到底部时,最后是“空”数据。
如何删除所述滚动条,以便其他人可以替换。
- 这是一个需要,而不是需要,但是让输入数据的单元格与滚动条和滚动条交互
只会到可见工作表的高度这么远。所以
如果工作表显示20行,那就是英文吧
数据将会进入。
再次感谢。
我决定尝试使用lastrow概念来制作它,以便脚本将进入“lastrow”进入.Max滚动条将不会超过最后一行数据,这里是代码:
Sub scrollbar()
Dim lastrow As Long
Dim wsJAR As Worksheet 'JL Archive
Dim wsARC As Worksheet 'JL Archive
Set wsJAR = Sheets("JL Archive")
Set wsARC = Sheets("Archives")
With wsARC
lastrow = wsJAR.Range("B" & .Rows.Count).End(xlUp).Row
ActiveSheet.ScrollBars.Add(1107, 44, 15, 404).Select
With Selection
.Max = lastrow
.LinkedCell = "Lists!$G$3"
End With
End With
End Sub
没有错误,它接受lastrow作为一个数字,但是继续经过细胞,即使它没有理由这样做。
最后一行是36,现在如果我从13开始,从36开始它完美无缺,但我无法想象这就是答案。
答案 0 :(得分:1)
更改
With wsARC
lastrow = wsJAR.Range("B" & Rows.Count).End(xlUp).Row
wsARC.FreezePanes = False
Range("A1:Q13").Select
Range("Q1").Activate
wsARC.FreezePanes = True
End With
到
With wsARC
lastrow = wsJAR.Range("B" & .Rows.Count).End(xlUp).Row
.Activate
ActiveWindow.FreezePanes = False
.Range("A1:Q13").Select
.Range("Q13").Activate
ActiveWindow.FreezePanes = True
End With
最终代码
Sub freezecells()
Dim lastrow As Long
Dim wsJAR As Worksheet 'JL Archive
Dim wsARC As Worksheet 'Archive
Set wsJAR = Sheets("JL Archive")
Set wsARC = Sheets("Archives")
With wsARC
lastrow = wsJAR.Range("B" & .Rows.Count).End(xlUp).Row
.Activate
ActiveWindow.FreezePanes = False
.Range("A1:Q13").Select
.Range("Q13").Activate
ActiveWindow.FreezePanes = True
End With
End Sub