Foxtable(狐表)用户栏目专家坐堂 → [求助] Sheet.Rows.Insert(hs)这条语句怎么会把模板弄成这样?


  共有3689人关注过本帖树形打印复制链接

主题:[求助] Sheet.Rows.Insert(hs)这条语句怎么会把模板弄成这样?

帅哥哟,离线,有人找我吗?
新福星
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15604 威望:0 精华:0 注册:2011/7/16 20:59:00
[求助] Sheet.Rows.Insert(hs)这条语句怎么会把模板弄成这样?  发帖心情 Post By:2014/9/19 12:04:00 [只看该作者]

模板初始是这样的;

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20140919120013.jpg
图片点击可在新窗口打开查看 

为了增加明细的行数,使用了 hs=10;  Sheet.Rows.Insert(hs) 就这条语句就把模板变样了,见下图

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20140919120201.jpg
图片点击可在新窗口打开查看
怎么会这样?如何解决?谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/19 12:06:00 [只看该作者]

 上传例子,说明要想实现什么

 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15604 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2014/9/19 12:10:00 [只看该作者]

就是要正常的插入一行,把最上面的图11-12行间能无限制的插入新行而格式不乱。现在是模板人工插入不乱,但是用hs=10;  Sheet.Rows.Insert(hs) 这个指令就变成下图这样了

 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15604 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2014/9/19 13:47:00 [只看该作者]

例子做好了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:打印测试.zip

又录了一个效果演示;前半部是人工插入行演示,是正常的,插入多少行格式都保持不乱;后半部是用程序Sheet.Rows.Insert(hs)插入一行的结果,也就是1楼的后一张图片。求老师查找原因?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:插入行演示.zip



 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/19 14:26:00 [只看该作者]

 要用vba做

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "合同模板.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Range("11:11") '以这个指定的单元格为基准
Rg.Insert(MSExcel.XlDirection.xlDown)

app.DisplayAlerts = False
wb.saveas(ProjectPath & "合同.xls")
App.quit

Dim Proc As New Process
Proc.File = ProjectPath & "合同.xls"
Proc.Start()

 

http://www.foxtable.com/help/topics/2121.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15604 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2014/9/19 14:36:00 [只看该作者]

谢谢!非常感谢

 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15604 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2014/10/8 7:22:00 [只看该作者]

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "合同模板.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Range("11:11") '以这个指定的单元格为基准
Rg.Insert(MSExcel.XlDirection.xlDown)

app.DisplayAlerts = False
wb.saveas(ProjectPath & "合同.xls")
App.quit

Dim Proc As New Process
Proc.File = ProjectPath & "合同.xls"
Proc.Start()


在实际操作中发现 Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "合同模板.xls") 这条语句打开的合同模板.xls文件在App.quit时并没有关闭,导致在下次使用时出现异常,应如何处理?谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/10/8 9:05:00 [只看该作者]

Dim App As New MSExcel.Application
try
    Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "合同模板.xls")
    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
    Dim Rg As MSExcel.Range = Ws.Range("11:11") '以这个指定的单元格为基准
    Rg.Insert(MSExcel.XlDirection.xlDown)
   
    app.DisplayAlerts = False
    wb.saveas(ProjectPath & "合同.xls")
catch ex As exception
    msgbox(ex.Message)
finally
    App.quit
End try

Dim Proc As New Process
Proc.File = ProjectPath & "合同.xls"
Proc.Start()


 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15604 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2014/10/8 11:27:00 [只看该作者]

谢谢

 回到顶部