VBA用于汇总过滤值

时间:2020-06-15 14:09:20

标签: excel vba

我有这个VBA代码,可以通过WC过滤特定的列。我想做的是将值与该值进行求和,而不必执行以下操作,我想创建一个循环。

有什么建议吗?

SUM(KH!R [49] C [3] + KH!R [50] C [3] + KH!R [51] C [3])

  Sheets("KH").Select
    ActiveSheet.Range("$A$3:$F$62").AutoFilter Field:=2, Criteria1:= _
        "Work"
    ActiveSheet.Range("$A$3:$F$62").AutoFilter Field:=4, Criteria1:="WC"
    Sheets("TS").Select
    Range("B4").Select
    ActiveCell.FormulaR1C1 = "=SUM(KH!R[49]C[3]+KH!R[50]C[3]+KH!R[51]C[3])"
    Range("B4").Select

1 个答案:

答案 0 :(得分:0)

您可以使用SUMIFS而不是过滤值然后尝试求和吗?

import glob
import csv
import os

path = "C:\\Users\\mdl518\\Desktop\\txt_strip\\"

with open(os.path.join(path,"test.txt"), 'r') as infile, open(os.path.join(path,"test.csv"), 'w') as outfile:
       stripped = (line.strip() for line in infile)
       lines = (line.split(",") for line in stripped if line)
       writer = csv.writer(outfile)
       writer.writerows(lines)