Foxtable(狐表)用户栏目专家坐堂 → excel


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

主题:excel

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
excel  发帖心情 Post By:2014/11/7 9:34:00 [只看该作者]

Dim cj2 As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker2")
Dim y,m,d As Integer
Dim dt2 As Date
dt2 = vars("gg")
Dim dt1 As Date = #1/01/0001#
DateYMD(dt1,dt2, y, m, d)
y=y+1
m=m+1
d=d+1
Dim f1 As String = "E:\财务数据汇总\报税\集资款.xls"
Dim f2 As String = "E:\财务数据汇总\报税\利息抵.xls"
Dim Book1 As New XLS.Book(f1)
Dim Book2 As New XLS.Book(f2)
Dim Sheet1 As XLS.Sheet = Book1.Sheets("单位集资发放利息")
Dim Sheet2 As XLS.Sheet = Book2.Sheets("利息抵")
If Sheet1(1,6).Value = vars("cc") Then
    'For n As Integer = 4 To 19
    Sheet2(7,3).Value = Sheet1(4,3).Value
    Sheet2(6,4).Value = Sheet1(4,5).Value
    Dim Proc As New Process
    Proc.File = (f2)
    Proc.Start()  
    'Next
Else
    MessageBox.Show("导入报表日期不符!")
End If

为什么不能赋值?


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


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

 你要先把book2保存以后,再打开才行啊


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/11/7 9:39:00 [只看该作者]

如何复制book2的工作表?


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


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

以下是引用发财在2014-11-7 9:39:00的发言:

如何复制book2的工作表?

 

不理解你什么意思

 

问题,请先详细说明说明;同时上传对应例子


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/11/7 10:20:00 [只看该作者]

Dim cj2 As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker2")
Dim y,m,d As Integer
Dim dt2 As Date
dt2 = vars("cc")
Dim dt1 As Date = #1/01/0001#
DateYMD(dt1,dt2, y, m, d)
y=y+1
m=m+1
d=d+1
Dim f1 As String = "E:\财务数据汇总\报税\集资款.xls"
Dim f2 As String = "E:\财务数据汇总\报税\利息抵.xls"
Dim Book1 As New XLS.Book(f1)
Dim Book2 As New XLS.Book(f2)
Dim Sheet1 As XLS.Sheet = Book1.Sheets("单位集资发放利息")
Dim Sheet2 As XLS.Sheet = Book2.Sheets("利息抵")
Dim tg As String
If Sheet1(1,6).Value = vars("cc") Then
    'For n As Integer = 4 To 19
tg =  Sheet1(4,1).Value
    Sheet2(2,3).Value = tg + "公司"
    Sheet2(7,3).Value = Sheet1(4,3).Value
    Sheet2(4,6).Value = Sheet1(4,5).Value
    Sheet2(7,5).Value = d
    Sheet2(2,6).Value = vars("cc")
book2.save(f2)
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.open(f2)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets("利息抵")
ws.UsedRange.Formula = ws.UsedRange.Formula
wb.save
wb.close
App.Quit
                Dim Proc As New Process
                Proc.File = (f2)
                Proc.Start()
    'Next
Else
    MessageBox.Show("导入报表日期不符!")
End If
n每增加1,就增加一个f2的利息抵表,如n= 4时,工作表为利息抵1,n = 5时,增加一个工作表利息抵2。。。。。。

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


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

  例子发上来。

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/11/7 10:39:00 [只看该作者]

  • Dim App As New MSExcel.Application
    Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\Report.xls")
    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets("同期对比") '指定要复制的工作表
    With Wb.WorkSheets
        Ws.Copy(After:=.Item(.Count))'复制到最后面
        Ws.Copy(Before:=.Item(1))'复制到最前面
        Ws.Copy  '复制到一个新工作簿
    End With
    Wb.Save
    App.Quit
  • 如何改为sheets复制

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


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

  什么意思?你是要复制多个表?那就一个一个的复制。

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/11/7 15:08:00 [只看该作者]

    For n As Integer = 2 To Wb.WorkSheets.Count
        Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(n)
        If ws.cells(3,4).value = "公司" Then
            app.DisplayAlerts = False
            ws.delete
        End If
    Next

上述代码为什么会:无效索引。 (Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX))

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


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

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\test01.xls")
app.DisplayAlerts = False

For n As Integer = Wb.WorkSheets.Count to 2 step -1
    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(n)
    'If ws.cells(3,4).value = "公司" Then
        ws.delete
    'End If
Next
app.visible = true


 回到顶部
总数 26 1 2 3 下一页