跨工作薄使用sumif函数

YUSHUIHE 2018-02-02 05:57:53
请各位高手看看下面的公式哪个地方有错误:在单元格显示的数字是#VALUE。yuangongName是变量,即员工姓名,hanghao1是行号,目的是想汇总每个员工的月销售额
Sheets("员工信息").Range("L" & hanghao1).Formula = _
' "=sum(sumif([业务办理.xls]客户信息!$I$4:$I$65536, yuangongName, [业务办理.xls]客户信息!$N$4:$N$65536))"
...全文
2006 19 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
YUSHUIHE 2018-02-08
  • 打赏
  • 举报
回复
谢谢各位老师。
YUSHUIHE 2018-02-07
  • 打赏
  • 举报
回复
结贴是肯定的,我还想问问老师,变量""" & yuangongName & """在公式中为何加三对引号,变量" & hanghao1 & "为何加一对引号?请不吝指教。
脆皮大雪糕 2018-02-07
  • 打赏
  • 举报
回复
引用 17 楼 YUSHUIHE 的回复:
脆皮大雪糕老师,对不起,昨天打错字了,请老师见谅。太谢谢了,这次成功了。我虽然年龄比老师大,但我在此领域还是个新手,以后衷心地希望老师不吝指教。谢谢。
不用太客套,结贴是关键
YUSHUIHE 2018-02-07
  • 打赏
  • 举报
回复
脆皮大雪糕老师,对不起,昨天打错字了,请老师见谅。太谢谢了,这次成功了。我虽然年龄比老师大,但我在此领域还是个新手,以后衷心地希望老师不吝指教。谢谢。
脆皮大雪糕 2018-02-06
  • 打赏
  • 举报
回复
你那句代码改成 Sheets("员工信息").Range("L" & hanghao1).Formula = _ "=sum(sumif([业务办理.xls]客户信息!$I$4:$I$65536, """ & yuangongName & """, [业务办理.xls]客户信息!$N$4:$N$65536))" 或者 Sheets("员工信息").Range("L" & hanghao1).Formula = _ ' "=sum(sumif([业务办理.xls]客户信息!$I$4:$I$65536, C" & hanghao1 & " , [业务办理.xls]客户信息!$N$4:$N$65536))"
脆皮大雪糕 2018-02-06
  • 打赏
  • 举报
回复
搞半天,公式写错 比如第五行,改成 =SUM(SUMIF([业务办理.xls]客户信息!$I$4:$I$65536, C5, [业务办理.xls]客户信息!$N$4:$N$65536)) 或者改成 =SUM(SUMIF([业务办理.xls]客户信息!$I$4:$I$65536,"孟祥波", [业务办理.xls]客户信息!$N$4:$N$65536)) 都能出结果 第二个参数要不直接引用单元格里的内容,要不要用字符串常量。不加引号在程序里被当做变量名,在excel单元格公式里就懵逼。
YUSHUIHE 2018-02-06
  • 打赏
  • 举报
回复
谢谢#11老师。
YUSHUIHE 2018-02-06
  • 打赏
  • 举报
回复
工作薄的地址已发,请脆皮大蛋糕老师费心。
YUSHUIHE 2018-02-06
  • 打赏
  • 举报
回复
https://pan.baidu.com/s/1smD9urz
脆皮大雪糕 2018-02-05
  • 打赏
  • 举报
回复
觉得还是扔一个文件出来让大家看看吧,这样靠猜的太费劲了
脆皮大雪糕 2018-02-05
  • 打赏
  • 举报
回复
扔百度云盘,然后共享出来,这里贴共享地址和密码
YUSHUIHE 2018-02-05
  • 打赏
  • 举报
回复
请问各位老师,怎样将Excel表复制到此贴上?
舉杯邀明月 2018-02-04
  • 打赏
  • 举报
回复
引用 5 楼 YUSHUIHE 的回复:
谢谢#4老师,试了,还是不行。加上完全路径后,显示公式错误。
实际上你这个是“跨工作”,并不是“跨工作簿”,是不需要加文件路径的。
引用 6 楼 YUSHUIHE 的回复:
举杯邀明月老师,VBA怎样用“筛选条件”?
你的公式,不是“条件求和”吗! 求和运算要针对一系列的数据来进行、并且运算过程中有一些数据是“被排除(筛掉)”的,   这“某条数据”是否被排除,是“有条件”的啊。 我这儿说的“筛选条件”,就是在VBA代码中,用If语句把“条件求和”的含义,“对等”的表达出来。 无论你这“累加”是一对一的关系、还是一对多的关系,都是要用循环来“扫描”相关数据的,   “求和过程”是要用到多重循环的,在“扫描、累加”的循环过程中,   自然要“按条件”把符合条件的数据累加、不符合条件的数据忽略(跳过),   才能完成对一项信息(一条“员工信息”)的处理。 有多少个“员工”,从理论上说就要扫描多少遍“被处理数据”。
YUSHUIHE 2018-02-04
  • 打赏
  • 举报
回复
举杯邀明月老师,VBA怎样用“筛选条件”?
YUSHUIHE 2018-02-03
  • 打赏
  • 举报
回复
谢谢#4老师,试了,还是不行。加上完全路径后,显示公式错误。
舉杯邀明月 2018-02-02
  • 打赏
  • 举报
回复
这个应该用“数组公式”吧? 如果真是需要数组公式,这样的代码写入的公式有可能不正确。 既然都用VBA了,干吗不按“筛选条件”把结果计算出来,直接填入相应的单元格?
YUSHUIHE 2018-02-02
  • 打赏
  • 举报
回复
谢谢,我试了1#老师的代码,还是不行,仍显示#value.
脆皮大雪糕 2018-02-02
  • 打赏
  • 举报
回复
"=sum(sumif([业务办理.xls]客户信息!$I$4:$I$65536, " & yuangongName & ", [业务办理.xls]客户信息!$N$4:$N$65536))"
脆皮大雪糕 2018-02-02
  • 打赏
  • 举报
回复
你是不是把那个业务办理.xls 给关了? 要不,你就要保持被引用得工作簿开着,要不,你就要写完整的路径 比如 "=sum(sumif(C:\test\[业务办理.xls]客户信息!$I$4:$I$65536, " & yuangongName & ",C:\test\[业务办理.xls]客户信息!$N$4:$N$65536))"

2,503

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧