gpt4 book ai didi

循环浏览工作表时 Excel 宏 : cycle through rows,

转载 作者:行者123 更新时间:2023-12-04 21:06:47 24 4
gpt4 key购买 nike

我有一个包含数百个工作表的工作簿,每个工作表都以相同的方式布局(即拥有相同的列),尽管数据行数不同。

我想循环浏览每张工作表中的每一行,如果某一列(列“L”)中的值是一个特定值(在这种情况下是一个字符串),我想将该行复制到一个新的工作表。所以最后我有一个大工作表,其中每一行都存在于较大的工作簿中,在“L”列中具有特定的指定值。

我不想也循环浏览我将结果复制到的工作表;也许我需要从不同的工作簿中执行此操作?

提前致谢。

回复:

所以文件和代码在我的办公室,但是:如果这是在 1 个工作表中,我知道有几种方法可以遍历行并返回部分或全部相应字段。我遇到的麻烦是(a)对其进行设置,使其在不同行数的不同工作表中循环,(b)将其返回到新的工作表,而无需重写已经编写的内容。如果有人有使用 ADO 的解决方案,那也将受到欢迎,因为它作为一个整体是一个非常大的工作表。再次感谢,如果我提出大而未指定的问题,我深表歉意。

最佳答案

由于您的问题是基于文本询问没有代码的意见,所以我给您我的意见并通过这个答案找到 - 很公平:)

根据我的评论,

因此,如果您想在 data book 上进行搜索从另一本书,这将是一个更好的主意 BUG: Memory leak occurs when you query an open Excel worksheet by using ActiveX Data Objects (ADO)

这样,你对待你的data book作为数据库本身并从 Excel 表中查询。
即使这样做,您也可能希望确保您考虑作为数据集的每个可搜索工作表都具有相似的结构。如果您向我们提供了样本数据,那么这比我们在黑暗中不断向目标 throw 石 block 要好得多... ;)
您提到了搜索行。您是否在每张纸上搜索一列的行?如果是这样,您的所有可搜索工作表都包含此列吗?

因此,对于您要搜索/扫描的行,这是 Microsoft 必须说的,非常需要注意:

“要扫描的行数: Excel 不向 ADO 提供有关其包含的数据的详细架构信息,因为关系数据库会 因此,驱动程序必须至少扫描几行现有的数据,以便对每列的数据类型进行有根据的猜测。“要扫描的行”的默认值为八 (8) 行。您可以指定从一 (1) 到十六 (16) 的整数值行,或者您可以指定零 (0) 来扫描所有现有行。这是通过将可选的 MaxScanRows= 设置添加到连接字符串,或通过更改 DSN 配置对话框中的 Rows to Scan 设置来完成的。

但是,由于 ODBC 驱动程序中的错误 ,指定要扫描的行 (MaxScanRows) 设置当前无效。换句话说,Excel ODBC 驱动程序(MDAC 2.1 和更高版本)总是扫描指定数据源中的前 8 行以确定每一列的数据类型。
"

此外,如果您的可搜索行具有混合数据类型--> 这会使您处于极大的危险之中。微软也谈到了这方面。

  • 引用文章: HOW TO USE ADO WITH EXCEL

  • 因此,您可以在上述过程中采取许多预防措施,但它比 VBA Binary Search 更快。和 .Find .但是如果你不想占用 ADO方法,那么您可以为我们提供一些您可能想出的设计。很高兴能在这方面继续前进。 :)

    关于循环浏览工作表时 Excel 宏 : cycle through rows,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13811339/

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