Excel精英培训网

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

[已解决]如何使用代码

[复制链接]
发表于 2015-12-3 19:30 | 显示全部楼层 |阅读模式
本帖最后由 mmc998 于 2015-12-6 21:21 编辑

Book1.rar (20.78 KB, 下载次数: 17)
发表于 2015-12-3 20:12 | 显示全部楼层
附件

Book11.zip

28.66 KB, 下载次数: 7

回复

使用道具 举报

 楼主| 发表于 2015-12-3 20:16 | 显示全部楼层
baksy 发表于 2015-12-3 20:12
附件

35行第一个1重了
回复

使用道具 举报

发表于 2015-12-4 10:04 | 显示全部楼层
QQ截图20151204095649.jpg


看不懂题意。

在31行,从哪列到哪列,才填入数据?

如此,是何意?即填入规则是啥
回复

使用道具 举报

 楼主| 发表于 2015-12-4 19:07 | 显示全部楼层
爱疯 发表于 2015-12-4 10:04
看不懂题意。

在31行,从哪列到哪列,才填入数据?

从31行往下填,填如a列的逆行数,填入的数不重复,比如,b31行填入a30,c31填入a29,d31填入a28,等。b32填如a31,c32填入a30,d32填入a29,等等。
回复

使用道具 举报

发表于 2015-12-4 19:23 | 显示全部楼层
Sub Click()
    Dim A, i, j
    A = Range("a1:ad" & Range("a655536").End(xlUp).Row)
    For i = 31 To UBound(A)
        For j = 2 To UBound(A, 2)
            A(i, j) = A(i - j + 1, 1)
        Next j
    Next i
    [a1].Resize(UBound(A), UBound(A, 2)) = A
End Sub

11.rar (155.57 KB, 下载次数: 5)
回复

使用道具 举报

 楼主| 发表于 2015-12-4 19:26 | 显示全部楼层
爱疯 发表于 2015-12-4 19:23
Sub Click()
    Dim A, i, j
    A = Range("a1:ad" & Range("a655536").End(xlUp).Row)

重复数太多,
回复

使用道具 举报

发表于 2015-12-4 19:38 | 显示全部楼层
mmc998 发表于 2015-12-4 19:26
重复数太多,

QQ截图20151204192835.jpg


首先,是不是应该按这种规律填?
           如果不是,那是什么规则?
           如果是,一旦出现重复(比如,第1次的重复位置,H31和G31),该如何处理?
回复

使用道具 举报

 楼主| 发表于 2015-12-4 19:41 | 显示全部楼层
爱疯 发表于 2015-12-4 19:38
首先,是不是应该按这种规律填?
           如果不是,那是什么规则?
           如果是,一旦 ...

就按此法填,重复的数保留一个
回复

使用道具 举报

发表于 2015-12-4 20:02 | 显示全部楼层
mmc998 发表于 2015-12-4 19:41
就按此法填,重复的数保留一个

Sub Click()
    Dim A, B, i, j, k
    i = Range("a655536").End(xlUp).Row
    Range([b31], Range("ad" & i)).ClearContents
    A = Range("a1:ad" & i)


    For i = 31 To UBound(A)
        ReDim B(1 To UBound(A, 2))
        For j = 2 To UBound(A, 2)
            If Len(A(i - j + 1, 1)) Then B(A(i - j + 1, 1)) = A(i - j + 1, 1)
        Next j

        j = 1
        For k = 1 To UBound(B)
            If Len(B(k)) Then j = j + 1: A(i, j) = B(k)
        Next k
    Next i
    [a1].Resize(UBound(A), UBound(A, 2)) = A
End Sub

虽然去重复了,但重新排序了,行吗?

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 17:53 , Processed in 0.543716 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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