Foxtable(狐表)用户栏目专家坐堂 → 关于EXCEL 设置单元格公式问题


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

主题:关于EXCEL 设置单元格公式问题

美女呀,离线,留言给我吧!
josieli
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:122 积分:859 威望:0 精华:0 注册:2012/8/27 9:42:00
  发帖心情 Post By:2012/10/10 16:09:00 [只看该作者]

是否在Dim sheet As XLS.Sheet = book.Sheets(0)中将book.sheet(0)改为人事.sheet(0)?

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/10 16:12:00 [只看该作者]

 楼主自己弄一下吧,区分如下图


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


 回到顶部
美女呀,离线,留言给我吧!
josieli
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:122 积分:859 威望:0 精华:0 注册:2012/8/27 9:42:00
  发帖心情 Post By:2012/10/10 16:15:00 [只看该作者]

明白了,我试下,多谢!


 回到顶部
美女呀,离线,留言给我吧!
josieli
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:122 积分:859 威望:0 精华:0 注册:2012/8/27 9:42:00
  发帖心情 Post By:2012/10/10 16:26:00 [只看该作者]

如果有两个SHEET

Dim Book As New XLS.Book(ProjectPath & "Attachments\2012 NCB Budget Actuals.xls")
Dim fl As String = ProjectPath & "Reports\2012 NCB Budget Actuals.xls"
Book.Build() '生成细节区
Dim sheet As XLS.Sheet = book.Sheets("FM 设施")

Dim lastRow As Integer
For i As Integer = 0 To sheet.Rows.count -1
    If sheet(i,15).Text = "求和" Then
        sheet(i,15).Formula = "=SUM(D" & (i+1) & ":O" & (i+1) & ")"
    End If
    If sheet(i, 17).Text = "求差" Then
        sheet(i, 17).Formula = "=P" & (i+1) & "- Q" & (i+1)
    End If
    If sheet(i, 18).Text = "变动" Then
        sheet(i, 18).Formula = "=IF(Q" & (i+1) & "=0,0,P" & (i+1) & "/Q" & (i+1) & ")"
    End If
    If sheet(i, 3).Text = "垂求和" Then
        lastRow = i
        Exit For
    End If
Next

Dim sheet As XLS.Sheet = book.Sheets("人事")

Dim lastRow As Integer
For i As Integer = 0 To sheet.Rows.count -1
    If sheet(i,15).Text = "求和" Then
        sheet(i,15).Formula = "=SUM(D" & (i+1) & ":O" & (i+1) & ")"
    End If
    If sheet(i, 17).Text = "求差" Then
        sheet(i, 17).Formula = "=P" & (i+1) & "- Q" & (i+1)
    End If
    If sheet(i, 18).Text = "变动" Then
        sheet(i, 18).Formula = "=IF(Q" & (i+1) & "=0,0,P" & (i+1) & "/Q" & (i+1) & ")"
    End If
    If sheet(i, 3).Text = "垂求和" Then
        lastRow = i
        Exit For
    End If
Next

Dim zm As String = "DEFGHIJKLMNOPQ"
For i As Integer = 0 To zm.Length - 1
    sheet(lastRow, i+3).Formula = "=Sum(" & zm.Chars(i) & "4:" & zm.Chars(i) & "9)"
Next

Book.Save(fl)
Dim Proc As New Process
Proc.File =fl
Proc.Start()

 

 

但是报错

图片点击可在新窗口打开查看

 回到顶部
美女呀,离线,留言给我吧!
josieli
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:122 积分:859 威望:0 精华:0 注册:2012/8/27 9:42:00
  发帖心情 Post By:2012/10/10 16:31:00 [只看该作者]

图片点击可在新窗口打开查看

 回到顶部
美女呀,离线,留言给我吧!
josieli
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:122 积分:859 威望:0 精华:0 注册:2012/8/27 9:42:00
  发帖心情 Post By:2012/10/10 16:50:00 [只看该作者]

我重新更改了语句如下,已经成功一半了。

 

 

Dim Book As New XLS.Book(ProjectPath & "Attachments\2012 NCB Budget Actuals.xls")
Dim fl As String = ProjectPath & "Reports\2012 NCB Budget Actuals.xls"
Book.Build() '生成细节区
Dim sheet1 As XLS.Sheet = book.Sheets("FM 设施")
Dim sheet2 As XLS.Sheet = book.Sheets("人事")

Dim lastRow As Integer
For i As Integer = 0 To sheet1.Rows.count -1
    If sheet1(i,15).Text = "求和" Then
        sheet1(i,15).Formula = "=SUM(D" & (i+1) & ":O" & (i+1) & ")"
    End If
    If sheet1(i, 17).Text = "求差" Then
        sheet1(i, 17).Formula = "=P" & (i+1) & "- Q" & (i+1)
    End If
    If sheet1(i, 18).Text = "变动" Then
        sheet1(i, 18).Formula = "=IF(Q" & (i+1) & "=0,0,P" & (i+1) & "/Q" & (i+1) & ")"
    End If
    If sheet1(i, 3).Text = "垂求和" Then
        lastRow = i
        Exit For
    End If
Next

Dim zm As String = "DEFGHIJKLMNOPQ"
For i As Integer = 0 To zm.Length - 1
    sheet1(lastRow, i+3).Formula = "=Sum(" & zm.Chars(i) & "4:" & zm.Chars(i) & "9)"
Next


For i As Integer = 0 To sheet1.Rows.count -1
    If sheet2(i,15).Text = "求和" Then
        sheet2(i,15).Formula = "=SUM(D" & (i+1) & ":O" & (i+1) & ")"
    End If
    If sheet2(i, 17).Text = "求差" Then
        sheet2(i, 17).Formula = "=P" & (i+1) & "- Q" & (i+1)
    End If
    If sheet2(i, 18).Text = "变动" Then
        sheet2(i, 18).Formula = "=IF(Q" & (i+1) & "=0,0,P" & (i+1) & "/Q" & (i+1) & ")"
    End If
    If sheet2(i, 3).Text = "垂求和" Then
        lastRow = i
        Exit For
    End If
Next

 

Book.Save(fl)
Dim Proc As New Process
Proc.File =fl
Proc.Start()


 回到顶部
美女呀,离线,留言给我吧!
josieli
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:122 积分:859 威望:0 精华:0 注册:2012/8/27 9:42:00
  发帖心情 Post By:2012/10/10 16:55:00 [只看该作者]

我想请教 If sheet1(i, 3).Text = "垂求和" Then
        lastRow = i
这里的If sheet1(i, 3)是不是第3列?


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/10/10 17:03:00 [只看该作者]

第四列,因为编号从0开始,0是第一列,3是第四列

 回到顶部
美女呀,离线,留言给我吧!
josieli
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:122 积分:859 威望:0 精华:0 注册:2012/8/27 9:42:00
  发帖心情 Post By:2012/10/10 17:05:00 [只看该作者]

嗯,明白,但是为什么"人事"的SHEET 同"FM 设施"构架一样,我用If sheet1(i, 3).Text = "垂求和" Then
        lastRow = i,统计不了垂求和,其他都没问题,请教哪里出现错误?

 回到顶部
美女呀,离线,留言给我吧!
josieli
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:122 积分:859 威望:0 精华:0 注册:2012/8/27 9:42:00
  发帖心情 Post By:2012/10/10 17:06:00 [只看该作者]

是不是要设计其他变量,比如T什么的

 回到顶部
总数 50 上一页 1 2 3 4 5 下一页