设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 5759|回复: 14
打印 上一主题 下一主题

求高手帮忙:如何根据条件插入行[已解决啦]

[复制链接]
跳转到指定楼层
1#
发表于 2009-10-8 00:39:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zxyhyuan 于 2009-10-15 16:39 编辑

    我发上来的是我们这里的文化户口册,在打印时需要一户打印在一页上,我想每页设成15行,请高手帮帮忙为谢!
用下面这段代码就可以了
Sub 打印()
Dim x As Integer
Dim myRange As Range
Dim myUnion As Range
Dim c As Range
On Error Resume Next
Sheets("文化户口册 ").Select
irow1 = Sheets("文化户口册 ").[b65536].End(xlUp).Row

For i = 1 To irow1 Step 1
If Sheets("文化户口册 ").Cells(i, 2) = "户主" Then
y = i - 14
Set myRange = Range(Cells(y, 2), Cells(i - 1, 2))
myRange.Activate
Set c = myRange.Find(What:="户主", LookIn:=xlFormulas)
   c.Activate
   
x = c.Row
Z = i + (14 - (i - x))
If i - x < 15 Then
     
  Set myUnion = Range(Cells(i, 1), Cells(Z, 20))
  myUnion.Activate
  myUnion.Select
   Selection.EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove
   

End If
  
End If

Next i

End Sub

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2009-10-8 00:50:33 | 只看该作者
本帖最后由 zxyhyuan 于 2009-10-8 00:56 编辑

A9单元格里的1为第一户,这一户一直到A15那一行,这里只有7行,要在这7行之后插入8行空白,才够一页,每页15行,第二户就是从A16开始.这样循环下去,(就是两个户主之间要隔14行),请高手帮忙,以户主为参照编一个程序,谢谢!
3#
 楼主| 发表于 2009-10-8 13:51:20 | 只看该作者
请高手帮帮忙,急用

点击这里给我发消息

4#
发表于 2009-10-8 21:37:21 | 只看该作者
只是为了打印么,不需要插入行,到分页预览里设置一下就好了。
5#
 楼主| 发表于 2009-10-9 11:35:33 | 只看该作者
请问楼主:怎么设
6#
 楼主| 发表于 2009-10-9 14:17:27 | 只看该作者
本帖最后由 zxyhyuan 于 2009-10-9 14:20 编辑

我想应该可以用VBA代码实现,因为数据量很大,全镇有将近一万户.如果用手工排要两天才能排完.请高手指教
7#
 楼主| 发表于 2009-10-9 14:32:32 | 只看该作者
请高手检查一下这段代码,错在什么地方,谢谢Sub 文化户口册打印()
Dim x As Integer
Dim y As Integer

   Application.DisplayAlerts = False '取消警告对话框
    Application.ScreenUpdating = False '取消屏幕更新

  For Each rw In Worksheets(文化户口册).Cells(1, 1).CurrentRegion.Rows
     this = rw.Cells(9, 2).Value = "户主"
      x = rw.Cells(9, 2).Rows
      y = x - 14
      
      Set myRange = Worksheets(文化户口册).Range("B" & y & ":B" & x - 1)
      answer = Application.WorksheetFunction.HLookup("户主", myRange, 1, False)
        
        If this = answer Then rw.Insert shift:=xlDown
        this = answer
        Next
        End Sub
8#
 楼主| 发表于 2009-10-9 16:11:50 | 只看该作者
楼上代码提示:下标越界
9#
发表于 2009-10-9 16:31:04 | 只看该作者
拿个文件来比较好,

点击这里给我发消息

10#
发表于 2009-10-9 19:10:23 | 只看该作者
用分类汇总就可以了,不管是固定的行还是不固定的行。

本帖子中包含更多资源

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

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

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-29 23:41 , Processed in 0.120426 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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