【发布时间】:2011-06-21 11:19:28
【问题描述】:
在 python 中,使用库来处理 excel 文件,我可以做我想做的事。 但是现在,因为我正在努力学习 VBA,所以我需要问这个问题。
我正在处理一个大约有 12 列和 50000 行的工作表。 该数据代表发送给公司的请求。 5#列代表它的代码,10#是完成它所花费的时间。 但是,例如,第 5、10 和 12 行可能属于同一个请求,只是为了组织目的而划分。
我需要处理这些数据,以便我可以:
第6列#代表人 谁回答了请求。所以,我需要 将每个请求放在“人的 工作表”。另外,创建这个 开始之前给他的工作表 向它添加请求。
对于每个人(工作表), 稳定请求类型(列 2#) 由他出席。即,创建 工作表上的另一个表 显示: Type_Of_Request | Number_of_currences
- 创建最终报告工作表,显示相同的表格 以上,但考虑所有请求 (没有人物过滤器)
Obs:我知道 stackoverflow 上的大多数问题都是为了解决一个特定的问题,但我在这里要求开始路线。 如果可能的话,甚至是解决方案。
出于解释的目的,我认为解释python中使用的算法将有助于了解一点python和VBA的人在这里帮助我。 因此,对于每个问题:
创建一个管理6#列数据的dict。 该字典将以该人的唯一姓名作为键,并且对于他回答的每个请求,它将被添加到指向他的姓名(字典键)的列表中。 就像是: {person1: [request1, request2, request3, ...], ... }
另一个管理 2# 列数据(请求类型)的字典。 现在,我将有一个字典,其中每个条目都有一个显示该类型请求的列表。 定位所有请求后,我对列表做了一个简单的求和,并用 (key, sum(dict[key])) 填充了一个表 其中 dict[key] 是相同类型的请求列表,它的总和返回该类型的请求总数。 就像是: {request_type1: [request1, request2, request3, ...], ... }
嗯,与 2 相同,但将算法应用于初始完整表。
我不知道 VB 是否有像 python 那样的 dict 类型(并且有很大帮助!),即使我是 VB 的新手。 非常感谢您的帮助。
【问题讨论】:
-
不评论您的实际问题/算法,我会让您知道您可以轻松地使用带有 VBA 的字典:stackoverflow.com/questions/1309689/…
-
我检查了提示,这是一个很好的提示。稍微解释一下 VBA 上的字典。谢谢