Excel 使用COUNTIF对带前导零的值进行计数
在Microsoft Excel 2016中,我使用VBA函数向列中添加值,然后我想使用COUNTIF来计算这些值在其他工作表中的出现次数 我添加如下值:Excel 使用COUNTIF对带前导零的值进行计数,excel,vba,excel-formula,Excel,Vba,Excel Formula,在Microsoft Excel 2016中,我使用VBA函数向列中添加值,然后我想使用COUNTIF来计算这些值在其他工作表中的出现次数 我添加如下值: Public Function addPackage() With Sheets("Scanned packages") Dim scannedPackage as String Dim nextrow As Long scannedPackage = "00370726207879082204" nextrow = .Cells(Rows.
Public Function addPackage()
With Sheets("Scanned packages")
Dim scannedPackage as String
Dim nextrow As Long
scannedPackage = "00370726207879082204"
nextrow = .Cells(Rows.Count, "A").End(xlUp).Row + 1
.Cells(nextrow, 1).Value = "'" & scannedPackage
End With
End Function
但是,当我使用COUNTIF函数检查另一个工作表中的匹配项时,它会显示49个匹配项,而实际上只有一个匹配项(我使用CTRL+F来验证是否只有一个匹配项)
两张图纸中的值都以两个前导零开始
我曾尝试将单元格格式化为“文本”、“常规”、“数字”等,但没有任何运气
如有任何意见,将不胜感激
“数据库”表“B”列中的数据:
这是我要统计的“扫描包”表A2单元格中的数据:
00370726207879082204
这是我使用的COUNTIF公式:
=COUNTIF(Database!A:B,'Scanned packages'!A2)
使用
使用
如果将A列中的值用双引号括起来,同样查找“00370726207879089082204”而不是00370726207879089082204,也可以绕过这个问题 用于向列表中的值添加双引号的宏:
Sub AddQuote()
Dim myCell As Range
For Each myCell In Selection
myCell.Value = Chr(34) & Replace(myCell.Value, Chr(34), "") & Chr(34)
Next myCell
End Sub
如果将A列中的值用双引号括起来,同样查找“00370726207879089082204”而不是00370726207879089082204,也可以绕过这个问题 用于向列表中的值添加双引号的宏:
Sub AddQuote()
Dim myCell As Range
For Each myCell In Selection
myCell.Value = Chr(34) & Replace(myCell.Value, Chr(34), "") & Chr(34)
Next myCell
End Sub
向我们显示
COUNTIF
公式和一些样本数据。样本数据:00370726207879080204 COUNTIF公式:=COUNTIF(数据库!A:B,“扫描包”!A2)如果只有一个数字,您如何获得49个实例?现在,在问题中更新,谢谢。请包括您正在使用的公式。向我们显示COUNTIF
公式和一些示例数据。示例数据:0037072620787908204 COUNTIF公式:=COUNTIF(数据库!A:B,'Scanned packages'!A2)如果只有一个数字,你怎么能得到49次出现的次数呢?现在,在问题中更新,谢谢。请包括你正在使用的公式。谢谢,这非常有效!但是,如果我向公式中添加一个SUMIF,我似乎无法使它起作用,例如:=COUNTIF(Database!a:B,CONCATENATE(“*”,A2))-SUMIF(Database!a:B,CONCATENATE(“*”,A2),Database!I:I)
也许我应该把它作为一个新问题发布?是的,你应该发布,因为这是一个新问题。谢谢,这非常有效!但是,如果我在公式中添加一个SUMIF,我似乎无法使它起作用,比如:=COUNTIF(Database!a:B,CONCATENATE(“*”,A2))-SUMIF(Database!a:B,CONCATENATE(“*”,A2),Database!I:I)
也许我应该将此作为一个新问题发布?是的,你应该发布,因为这是一个新问题。谢谢你,大卫!这也可以。但是,我不想更改单元格中的数据。谢谢你,大卫!这也可以。但是,我不想更改单元格中的数据。
Sub AddQuote()
Dim myCell As Range
For Each myCell In Selection
myCell.Value = Chr(34) & Replace(myCell.Value, Chr(34), "") & Chr(34)
Next myCell
End Sub