2

另一天,另一个问题。我认为让这件事发挥作用很容易,但我现在不知道如何走得更远。

问题:

在工作中,我们从客户那里获得了 excel 表格。在这张表中,他们在每一列中组织了详细信息,例如第一列包含客户编号,第二列包含名称,第三列包含地址等等。第一行包含列的描述,例如:“客户编号”、“名称”、“地址”等。

问题是,并非每个客户都以正确的顺序或相同的描述向我们发送此信息,例如,有些人使用 Customernumbers、数字或瞳孔编号来调用该列。此外,列的顺序并不总是相同。有时他们把地址放在第一列,有时他们把名字放在第一列。

我们必须以正确的顺序手动剪切和粘贴我们自己的 Excel 表中的每一列,以便我们的软件可以读取所有内容并将其放入数据库(不是 mysql,否则我已经为 mysql 制作了脚本)。

问题:

如何检测每列中写入的内容并自动将该列剪切并粘贴到我们的 Excel 工作表的右列中。例如,检测到第 3 列是关于 Customernumbers 并将它们粘贴到我们工作表的 Customernumber 列中。

想法:

1.)我正在考虑并用php en mysql做一个解决方案,将excel工作表以xml格式上传,以便php脚本可以运行并读取这个xml文件,以便最终可以将其存储在mysql数据库中. 之后,我们可以创建一个 xml 文件,方法是将数据库中的信息写入 xml 文件,其中列的顺序正确。

2.)经过长时间的思考和测试,我意识到这将花费很多时间,而且对于如此简单的事情来说太复杂了。相反,我尝试在 VBA 中制作一些东西。我找到了有用的脚本,并了解到 VBA 可以做我想做的事情。唯一的问题是,网络太大了,无法找到我真正想要的东西,我只知道 VBA 的基础知识,但是我想了解更多关于它的信息,这是我在短时间内需要的东西。

4

1 回答 1

0

我同意约翰的观点,未来最好的解决方案是为客户提供标准模板。

但就您当前的问题而言,请尝试根据每列的内容对其进行分类。例如: - 名称以大写字母开头,并且往往有一到两个空格分隔名字、中间名和姓氏 - 地址往往以三到四位数字开头,后跟一系列字母 - ID 往往只有数字人物

获取每个类别的这些特征,并在每列中向下走几行,以查看数据最适合这些类别中的哪一个。

这应该允许您识别每一列,并且从那里应该很容易选择列并将它们随机排列。

于 2013-07-18T16:23:15.493 回答