Excel精英培训网

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

[已解决]VBA

[复制链接]
发表于 2015-12-1 20:23 | 显示全部楼层 |阅读模式
本帖最后由 SHENQIAN 于 2015-12-2 13:26 编辑

Sub tt()
    With Sheet2
        .Cells.Clear
        arr = [a1].CurrentRegion
        For i = 2 To UBound(arr)
            x = Val(arr(i, 1)): y = Val(arr(i, 2))
            .Cells(x, y) = arr(i, 3)
            If .Cells(x, y).Value = "1" Then

              .Cells(x, y).Interior.ColorIndex = 4
              ElseIf .Cells(x, y).Value = "2" Then
                .Cells(x, y).Interior.Color = 3
                  ElseIf .Cells(x, y).Value = "3" Then
                    .Cells(x, y).Interior.Color = 5
                    ElseIf .Cells(x, y).Value = "5" Then
                  .Cells(x, y).Interior.Color = 6
                ElseIf .Cells(x, y).Value = "6" Then
            .Cells(x, y).Interior.Color = 7
                  ElseIf .Cells(x, y).Value = "8" Then
            .Cells(x, y).Interior.Color = 9

        End If

     NeXT
        .Activate
    End With
End Sub
请各位帮我看一下这个有什么问题??

最佳答案
2015-12-2 13:10
.Interior.Color
都换成成
.interior.colorindex
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2015-12-1 20:30 | 显示全部楼层
  把形如If .Cells(x, y).Value = "1" Then中的""去了看看
回复

使用道具 举报

发表于 2015-12-1 21:15 | 显示全部楼层
本帖最后由 lichuanboy44 于 2015-12-1 21:17 编辑

With Sheet2
.Cells.Clear
arr =[a1].CurrentRegion
发现两个问题:
1、既然Sheet2.Cells.Clear,将sheets表数据全部清除了,且[a1]前面没有指定那个表格,也就默认为.[a1],那么arr中就是空数组,UBound(arr)为空值(也不是0),接着 For i = 2 To UBound(arr)就没办法运行,故出错。
回复

使用道具 举报

 楼主| 发表于 2015-12-2 09:25 | 显示全部楼层
lichuanboy44 发表于 2015-12-1 21:15
With Sheet2
.Cells.Clear
arr =[a1].CurrentRegion

我这个就是第一个底纹颜色,可以其它的也运行但是都是黑色的底纹颜色
回复

使用道具 举报

发表于 2015-12-2 12:46 | 显示全部楼层
SHENQIAN 发表于 2015-12-2 09:25
我这个就是第一个底纹颜色,可以其它的也运行但是都是黑色的底纹颜色

你的程序与你的数据源是匹配的,经过我演示,单元格清除了,arr为空,没办法for循环。我将clear语句关闭后,再随便弄几个数据模拟,确是黑色。因你的x,y参数值导致对某一个单元进行底色重复修改。你要传附件,且说明你的目的,光凭程序语句说不清楚。
回复

使用道具 举报

发表于 2015-12-2 13:10 来自手机 | 显示全部楼层    本楼为最佳答案   
.Interior.Color
都换成成
.interior.colorindex
回复

使用道具 举报

 楼主| 发表于 2015-12-2 13:24 | 显示全部楼层
谢谢你们,后来我看到了
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 19:37 , Processed in 1.173593 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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