gpt4 book ai didi

Excel---统计重复数据

转载 作者:行者123 更新时间:2023-12-04 22:09:56 29 4
gpt4 key购买 nike

APC NM000038
APC NM000038
APC NM000038
APC NM000038
APC NM001127510
APC NM001127510
APC NM001127510

我试图在excel中计算重复数据。我找不到相关的答案,所以我只是在这里问。并感谢您提前回答。

我正在尝试使用两列信息来计算。如果值在
A列=某些标准,我想计算一个值的次数
出现在 B 列中(不计算 B 列中的相同值,只计算不同的值) - 并非 A 列中的所有值都对应于 b 列
值(value)观。所以如果我想看看有多少女性获得了“5”,我需要看看
A列中有多少“女性”在B列中有相应的“5”值。
(并非所有女性都有“5”,值可以是 1 到 5)

在上面的例子中,我期望
NM001127510  2
NM000038 2

最佳答案

假设您的数据在单元格 A1 到 B1000 中,请使用此公式

=SUMPRODUCT((A1:A1000="APC")*(B1:B1000="NM000038"))

相似地
=SUMPRODUCT((A1:A1000="APC")*(B1:B1000="NM001127510"))

跟进

I did that, but the data sets are huge, several hundred MB excel file. I m not sure whether i need to use vba to do that, cuz i dont know a lot about vba – Maggie Mi 7 hours ago



如果您的 Excel 文件 >= 100 mb,则打开它,然后运行 ​​VBA 代码或使用公式 需要很多时间 .如果您只关心结果,那么试试这个:)

打开一个新的 Excel 文件。确保您的其他文件已关闭。在模块中粘贴此代码。当你运行它时,输出将被粘贴到 Sheet1 中。
Option Explicit

Sub Sample()
Dim ws As Worksheet
Dim adodb As Object
Dim result

Set ws = Sheets("Sheet1")

Set adodb = CreateObject("ADODB.Connection")

adodb.CursorLocation = 3

adodb.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _
"C:\book1.xlsx" & ";Extended Properties=""Excel 12.0 Xml;IMEX=1" & _
"HDR=NO;" & """"

Set result = adodb.Execute("Select F1, F2, Count(*) from [Sheet1$] Group by F1,F2")

With ws
.Range(.Cells(1, 1), .Cells(result.RecordCount, result.Fields.Count)) _
= Application.Transpose(result.GetRows)
End With

'~~> Cleanup
result.Close
adodb.Close
Set adodb = Nothing
Set result = Nothing
End Sub

我的假设(更改上面的代码 - 我的代码基于以下假设)

1) 您正在使用 Excel 2007/2010 文件。如果没有,那么您将不得不更改连接字符串。请参阅此链接以获取适当的连接字符串。

http://connectionstrings.com/excel

2) 包含数据的 Excel 文件的名称为 Book1.xlsx数据在 Sheet1 .它也位于 C:\
快照

enter image description here

关于Excel---统计重复数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10458196/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com