Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2488|回复: 3

[已解决]有关代码的通用性修改。

[复制链接]
发表于 2014-4-11 18:48 | 显示全部楼层 |阅读模式
本帖最后由 left369 于 2014-4-11 19:26 编辑

有关代码的通用性修改。

  With Worksheets("sheet1")
    With .UsedRange.Font
      .ColorIndex = 0
      .Bold = False
    End With
    For i = 1 To Len(.Range("a100"))
      brr(i) = Mid(.Range("a100"), i, 1)
    Next
    r = .Cells(.Rows.Count, 16).End(xlUp).Row
    c = .Cells(7, .Columns.Count).End(xlToLeft).Column
    Arr = .Range("h7").Resize(r - 6, c - 14)
  End With

这一段代码只能在sheet1中适用,如何修改让它在任何一个sheet都能适用呢?
每次如果在其它sheet使用时,要到代码里修改sheet1很麻烦,能否改成通用性的。
最佳答案
2014-4-11 19:10
第1行的With Worksheets("sheet1") 修改成With ActiveSheet就ok了
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-4-11 19:06 | 显示全部楼层
  1. With ActiveSheet.UsedRange.Font
  2.       .ColorIndex = 0
  3.       .Bold = False
  4.     End With
  5.     For i = 1 To Len(Range("a100"))
  6.       brr(i) = Mid(Range("a100"), i, 1)
  7.     Next
  8.     r = Cells(Rows.Count, 16).End(xlUp).Row
  9.     c = Cells(7, Columns.Count).End(xlToLeft).Column
  10.     arr = Range("h7").Resize(r - 6, c - 14)
复制代码

评分

参与人数 1 +1 收起 理由
yuan1987 + 1

查看全部评分

回复

使用道具 举报

发表于 2014-4-11 19:10 | 显示全部楼层    本楼为最佳答案   
第1行的With Worksheets("sheet1") 修改成With ActiveSheet就ok了
回复

使用道具 举报

 楼主| 发表于 2014-4-11 19:49 | 显示全部楼层
哦刚刚看到还一位老师解答了。不好意思
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-16 13:49 , Processed in 0.257002 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表