基于单元格VBA的Excel自动更改表名称

普斯科洛

我们有一本工作簿,需要每个月更改工作表的名称,我决定为其他员工自动化它。因此,经过一些研究,我发现最好的方法是引用细胞名称。我需要它来开始在第四张纸上运行并运行到倒数第二张纸上。我找到了一些VBA代码并对其进行了编辑,直到到达这一点为止:

Sub RenameSheet()
Dim ShCnt As Integer      'count of sheets in workbook
  Dim myarray() As String   'array of new worksheet names
  Dim Month() As String     'mystery variable -- not used in this code
  Dim i As Integer          'loop counter
  Dim Lrow As Integer       'number of new worksheet names.
 
  ThisWorkbook.Sheets("SETUP").Select  'select the sheet that has the list of new names
  Lrow = Range("T1").End(xlDown).Row  'get range that contains new worksheet names
  ShCnt = ThisWorkbook.Sheets.Count   'get number of worksheets in the workbook
  ReDim myarray(1 To Lrow)            'resize array to match the number of new worksheet names
   
  For i = 1 To UBound(myarray)   'loop through array of new sheet names
    myarray(i) = Range("T" & i).Value 'insert new sheet name into array
    Debug.Print Range("T" & i).Value    'show the new worksheet name in 'the Immediate window to be able to check that  we're getting what we want
  Next i                                'end of loop
 
  For i = 4 To ShCnt - 1                 'loop through array of existing worksheets
    Sheets(i).Name = myarray(i)       'rename each worksheet with the matching name from myarray
  Next i                              'end of loop
 
  MsgBox "Sheets name has changed successfully"   'report success
End Sub

我的问题是,我需要第4张表以“ T2”单元格中的值开头。我发现这段代码改变了起点:

  For i = 1 To UBound(myarray)   
    myarray(i) = Range("T" & i).Value 
    Debug.Print Range("T" & i).Value    
  Next i 

当我换成myarray(i) = Range("T" & i).Valuemyarray(i) = Range("T2" & i).Value它开始于T24细胞由于某种原因(这可能与我的按钮?安置办)和myarray(i) = Range("T" + 1 & i).Value 不工作。

我也尝试将For i = 1 To UBound(myarray)to更改For i = 2 To UBound(myarray),但也没有用。

有人可以帮我弄清楚如何获取它,以便使单元格T2中的信息最终出现在第四张纸上并从那里开始吗?提前非常感谢您。

尊尼

我建议在工作簿中的工作表之间循环,并使用循环计数器来索引T列中的名称范围:

Sub RenameSheet()

  Dim ShCnt As Integer
  Dim i As Integer
 
  Dim ws_setup As Worksheet
  Set ws_setup = ThisWorkbook.Worksheets("SETUP")
  
  ShCnt = ThisWorkbook.Worksheets.Count
  
  Const start_ws_index = 4
  For i = start_ws_index To ShCnt - 1
    ThisWorkbook.Worksheets(i).Name = _
        ws_setup.Range("t2").Offset(i - start_ws_index, 0).Value
  Next i
  
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Excel VBA-更改单元格时运行宏

来自分类Dev

Excel-VBA:根据相邻单元格的文本颜色更改单元格的文本颜色

来自分类Dev

MS Excel自动更改单元格变量

来自分类Dev

Excel VBA:使用公式自动填充多个单元格

来自分类Dev

VBA:更改Excel单元格宽度

来自分类Dev

Excel“插入形状”基于单元格值的颜色更改

来自分类Dev

当工作表中的任何单元格更改时,Excel VBA重新运行公式(更新)

来自分类Dev

通过更改单元格上的值,Excel VBA崩溃

来自分类Dev

Excel VBA在单元格A中放置一个值,单元格B将自动更改

来自分类Dev

自动基于该工作表的单元格值更改活动工作表名称

来自分类Dev

Excel VBA:基于单元格值的颜色范围

来自分类Dev

范围中任何单元格中的值更改时自动运行Excel VBA

来自分类Dev

Excel-VBA:根据相邻单元格的文本颜色更改单元格的文本颜色

来自分类Dev

Excel VBA单元格自动前进子拆分词

来自分类Dev

VBA:更改Excel单元格宽度

来自分类Dev

单元格更改VBA上的返回表行号

来自分类Dev

Excel VBA-日期单元格自动更改回区域日期格式

来自分类Dev

基于工作表名称的单元格引用

来自分类Dev

Excel VBA-根据其他工作表中的事件更改单元格颜色

来自分类Dev

Excel VBA在单元格A中放置一个值,单元格B将自动更改

来自分类Dev

Excel Macro VBA基于活动单元格内容创建到另一个工作表的超链接

来自分类Dev

Excel 2007:更改背景颜色单元格->不基于单元格的值

来自分类Dev

Excel VBA:动态更改工作表中其名称在另一个单元格中引用的单元格值

来自分类Dev

基于单元格值的 VBA 数据透视表过滤器更改

来自分类Dev

克隆工作表,命名,清除单元格 - Excel VBA

来自分类Dev

基于调整单元格的VBA公式

来自分类Dev

基于Excel VBA中单元格颜色的值计算

来自分类Dev

Excel VBA - 通过另一个单元格更改单元格值?

来自分类Dev

在单元格值更改时自动触发宏 |Excel|VBA|

Related 相关文章

  1. 1

    Excel VBA-更改单元格时运行宏

  2. 2

    Excel-VBA:根据相邻单元格的文本颜色更改单元格的文本颜色

  3. 3

    MS Excel自动更改单元格变量

  4. 4

    Excel VBA:使用公式自动填充多个单元格

  5. 5

    VBA:更改Excel单元格宽度

  6. 6

    Excel“插入形状”基于单元格值的颜色更改

  7. 7

    当工作表中的任何单元格更改时,Excel VBA重新运行公式(更新)

  8. 8

    通过更改单元格上的值,Excel VBA崩溃

  9. 9

    Excel VBA在单元格A中放置一个值,单元格B将自动更改

  10. 10

    自动基于该工作表的单元格值更改活动工作表名称

  11. 11

    Excel VBA:基于单元格值的颜色范围

  12. 12

    范围中任何单元格中的值更改时自动运行Excel VBA

  13. 13

    Excel-VBA:根据相邻单元格的文本颜色更改单元格的文本颜色

  14. 14

    Excel VBA单元格自动前进子拆分词

  15. 15

    VBA:更改Excel单元格宽度

  16. 16

    单元格更改VBA上的返回表行号

  17. 17

    Excel VBA-日期单元格自动更改回区域日期格式

  18. 18

    基于工作表名称的单元格引用

  19. 19

    Excel VBA-根据其他工作表中的事件更改单元格颜色

  20. 20

    Excel VBA在单元格A中放置一个值,单元格B将自动更改

  21. 21

    Excel Macro VBA基于活动单元格内容创建到另一个工作表的超链接

  22. 22

    Excel 2007:更改背景颜色单元格->不基于单元格的值

  23. 23

    Excel VBA:动态更改工作表中其名称在另一个单元格中引用的单元格值

  24. 24

    基于单元格值的 VBA 数据透视表过滤器更改

  25. 25

    克隆工作表,命名,清除单元格 - Excel VBA

  26. 26

    基于调整单元格的VBA公式

  27. 27

    基于Excel VBA中单元格颜色的值计算

  28. 28

    Excel VBA - 通过另一个单元格更改单元格值?

  29. 29

    在单元格值更改时自动触发宏 |Excel|VBA|

热门标签

归档