ARTICLE · 1065696
让ai解决造价人的EXCEL公式
做造价的都懂,一天泡在表里。三个项目的成本合成一张、按编码去信息价表取单价、把偏差超5%的行标出来、从材料描述里抠规格型号。活都不难,就是想不起来函数该怎么拼。以前我的流程是:百度、翻到某个论坛帖子、抄一段、改半小时、报错、再换一段、再改。
现在大家可以把表头贴给AI,说出自己得需求,ai就能把公式就出来了。

一、按编码从另一张表取单价
手上有工程量清单,价格在另一张综合单价表里,两张表靠编码对。可以这样跟它这么说:
我这有两个sheet。Sheet1:A列清单编码,B列项目名称,C列工程量Sheet2:A列清单编码,B列综合单价要在Sheet1的D列算合价,价格从Sheet2按编码取。给我公式,写清楚每个参数什么意思。
它给我的大概是这个:
=IFERROR(VLOOKUP($A2,Sheet2!$A:$B,2,0)*C2,"编码没对上")
在外面包一层IFERROR。不然一个编码对不上,整列#N/A,看着闹心,还说不清是哪几条出的问题。
这里提醒一句:同一个编码在价格表里出现好几行的(材料价常见),VLOOKUP只取第一行。这种情况直接跟它说"一个编码可能对多行,要合计",它自己会换成SUMIFS。
二、按多个条件汇总
产值表里按标段、按专业、按月份分别汇总,用SUMIFS:
=SUMIFS(产值表!$D:$D,产值表!$B:$B,$A2,产值表!$C:$C,$B2,产值表!$F:$F,C$1)
(行是标段+专业,第一行是月份。)
这种公式我自己写要试三四次,参数位置总记混。它是死记的,一次就对。条件里想用"包含"这种模糊匹配,要写成 `"*"&$A2&"*"`。这个写法我是问了AI才知道的。不过它配VLOOKUP用的时候是碰上第一个就返回,对不上的行还得自己翻,别当它能替你核对。
三、标出偏差超限的行
对量最烦的就是这个,量差百分之几的得一条条看。加一条条件格式规则:
=ABS($F2-$E2)/$E2>0.05
选中要判的整列,新建条件格式,规则贴进去,填个红底。我以前是一条条算差值再排序,一列两百行能磨一下午。现在两分钟。
有个地方得改一下:AI默认给的是绝对值超5%。实际操作里甲方乙方对"增加"和"减少"的敏感度不一样,多算和少算不是一回事。所以要提前跟它说"我要分开看增加和减少",它会给你两条规则。
四、从文字里抠东西
清单编码12位,想按大项汇总,取前9位就行:
=LEFT(A2,9)
材料描述里抠规格,格式统一的时候这个够用:
=MID(B2,FIND("Φ",B2),4)
格式不统一就麻烦了。我见过"螺纹钢HRB400 Φ12"、"HRB400螺纹钢12mm"、"φ12螺纹钢"三种写法混在一张表里。这种我一般不硬抠,先让AI列个"这张表里一共有几种写法"的清单,再拿两三个通配符去兜。
新版Excel有正则函数了,但我们办公室那台电脑肯定跑不了,所以我习惯直接跟它说"用Excel 2016能跑的函数写"。
五、重复项合并
材料表里同一个材料写了好几遍。新版Excel就一句:
=UNIQUE(B2:B200)
老版本没这函数,用数据透视表反而更稳,材料名拖行、数量拖值,两下完事。AI也会推荐透视表,我就喜欢它这点,不硬塞函数。
六、两张表比差异
两个清单互相查对方有没有,比对量太常见了:
=IF(COUNTIF(清单B!$A:$A,$A2)=0,"B表里没有","")
两边各挂一列,筛一下就出来。最费的从来不是公式,是眼睛。
七、按状态数条数
月度报量单里有多少条没完成:
=COUNTIFS(报量表!$C:$C,"未完成",报量表!$D:$D,$A2)
这个没啥好说的,两句话的事。
八、日期和工期
签证上的逾期天数:
=MAX(0,E2-D2)
E2是实际完成,D2是应完成。算月份差、年数才用得着DATEDIF。
按月归集:
=TEXT(B2,"yyyy-mm")
EOMONTH取当月最后一天,算月度产值截止日挺好用。
告诉给的四件套
问法就四样:表头、目标、版本、例子。
表头——A列是什么、B列是什么,一行一行写清楚。这个最关键。
目标——要什么结果,说人话。别上来就问"怎么写SUMIFS",把事说清楚,它自己挑函数。
版本——"用Excel 2016能跑的函数写"。不加这句,它默认给最新的,你还得返工。
例子——给两行结果的样子,比说十句都管用。

四个坑需要注意
不贴表头。有回我偷懒,只说"B列是材料名",它给的公式里引用的是A列和C列——它按自己想的排的。我盯着看了半天才发现是列号错了。
版本不兼容。第一次它给我XLOOKUP,贴进去直接#NAME?。我们单位那台电脑还跑着Office 2016,得提前说清楚。
中文标点。这个隐蔽。公式复制过去报错,检查了半小时,发现引号复制过来变成中文引号了。
嵌套太深。跨四张表的活,它给我写了六层嵌套,我看了十分钟没看懂。后来让它拆成两个辅助列,五分钟搞定。复杂的别一步到位。

最后一个,也是最重要的:它给的公式我照样得拿三行手算验一遍。这步懒不能偷,对不对只有你自己知道。就这样。表一卡壳就把表头贴过去,比翻论坛快多了。