A9VG电玩部落论坛

 找回密码
 注册
搜索
查看: 3688|回复: 13

[Excel 宏] 求助, Loop如何停止? (更新問題)

[复制链接]
ryb

挂版VIP

課金薄いぞ!なにやってんの

精华
19
帖子
30555
威望
47 点
积分
33745 点
种子
85 点
注册时间
2009-4-24
最后登录
2025-6-21
 楼主| 发表于 2011-11-2 04:46  ·  新西兰 | 显示全部楼层 |阅读模式
本帖最后由 ryb 于 2011-11-2 11:30 编辑



如圖, 想要寫一個Loop的宏是可以自己加行的

比如在 I 列裡面有數值的如下

Column I

I5:
I6: 702
I7:
I8:
I9:
I10: 701
I11:
I12: 700
I13
以此類推


想要寫一個宏是可以在 I 列裡面每個有數值的cell 上面加上一個空白行

所以 702 變成第 7 行, 701 變成第 13 行


請問有兄弟姊妹懂得木???

多謝


或者有這種excel 可以發問討論的論壇可以介紹木??



Sub testxx()
    Do
        Selection.End(xlDown).Select
        ActiveCell.EntireRow.Insert Shift:=xlDown
        ActiveCell.Offset(2, 0).Select
    Loop
End Sub


目前試出來的是這樣
這樣確實可以使每個有數值的cell上面都加一行

但是如何停止這個Loop??
每次都會一路到底


多謝

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

审判者

皮卡球元首

精华
0
帖子
11102
威望
0 点
积分
12809 点
种子
5 点
注册时间
2007-1-31
最后登录
2020-12-15
发表于 2011-11-2 05:13  ·  上海 | 显示全部楼层
不懂 路过帮顶。。。。。。

精华
25
帖子
65375
威望
53 点
积分
76450 点
种子
13 点
注册时间
2003-8-23
最后登录
2025-9-25
发表于 2011-11-2 07:33  ·  美国 | 显示全部楼层
本帖最后由 天神十三煞 于 2011-11-1 15:34 编辑

他这个表述好像有点问题,没看原文不知道
不过应该就是if后loop插入链表+1
我没学过office宏,按程序思想的话
当新加行batch值702时自动插入到702那一堆首行
ryb

挂版VIP

課金薄いぞ!なにやってんの

精华
19
帖子
30555
威望
47 点
积分
33745 点
种子
85 点
注册时间
2009-4-24
最后登录
2025-6-21
 楼主| 发表于 2011-11-2 08:42  ·  新西兰 | 显示全部楼层
感謝LS回覆啊
VBA的程碼就可以了

......原文?? 這是我寫的問題啊, 啥原文??

征服者

梅根,大爱

精华
0
帖子
5168
威望
0 点
积分
5230 点
种子
5 点
注册时间
2009-3-19
最后登录
2015-4-28
发表于 2011-11-2 09:07  ·  北京 | 显示全部楼层
我每天都弄我的excel
但是LZ你的描述我真不懂
而且我用中文。。。。。。。。。。。。。。。。。。。
ryb

挂版VIP

課金薄いぞ!なにやってんの

精华
19
帖子
30555
威望
47 点
积分
33745 点
种子
85 点
注册时间
2009-4-24
最后登录
2025-6-21
 楼主| 发表于 2011-11-2 09:10  ·  新西兰 | 显示全部楼层
就是說, 把702, 701, 700............
有這些數字的地方自動加一個空行 (自動斷行)

        Selection.End(xlDown).Select
        ActiveCell.Offset(-1, 0)
        ActiveCell.EntireRow.Insert Shift:=xlDown


可是, 我不知道要加Loop的話要怎麼寫

审判者

f2p=p2w

精华
2
帖子
13915
威望
4 点
积分
17627 点
种子
112 点
注册时间
2005-11-1
最后登录
2025-10-7
发表于 2011-11-2 09:13  ·  加拿大 | 显示全部楼层
Sub test()
Dim i
i = 6
Do Until i > Range("A65536").End(xlUp).Row + 1
Rows(i & ":" & i).Insert Shift:=xlDown
i = i + 2
Loop
End Sub

征服者

梅根,大爱

精华
0
帖子
5168
威望
0 点
积分
5230 点
种子
5 点
注册时间
2009-3-19
最后登录
2015-4-28
发表于 2011-11-2 09:21  ·  北京 | 显示全部楼层
ricyouhaku 发表于 2011-11-2 09:13
Sub test()
Dim i
i = 6

有点C语言的感觉               
ryb

挂版VIP

課金薄いぞ!なにやってんの

精华
19
帖子
30555
威望
47 点
积分
33745 点
种子
85 点
注册时间
2009-4-24
最后登录
2025-6-21
 楼主| 发表于 2011-11-2 09:23  ·  新西兰 | 显示全部楼层
回复 ricyouhaku 的帖子

強人啊, 謝謝

現在是每行都行都控開了

不論有沒有數值的都加了一行


能夠只在有數值的上面加一行嘛?


多謝
ryb

挂版VIP

課金薄いぞ!なにやってんの

精华
19
帖子
30555
威望
47 点
积分
33745 点
种子
85 点
注册时间
2009-4-24
最后登录
2025-6-21
 楼主| 发表于 2011-11-2 11:30  ·  新西兰 | 显示全部楼层

Sub testxx()
    Do
        Selection.End(xlDown).Select
        ActiveCell.EntireRow.Insert Shift:=xlDown
        ActiveCell.Offset(2, 0).Select
    Loop
End Sub


目前試出來的是這樣
這樣確實可以使每個有數值的cell上面都加一行

但是如何停止這個Loop??
每次都會一路到底


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

本版积分规则

Archiver|手机版|A9VG电玩部落 川公网安备 51019002005286号

GMT+8, 2025-10-8 07:19 , Processed in 0.206067 second(s), 14 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部