如何为列中的每个单元格执行一个函数并遍历所有工作簿?

Posted

技术标签:

【中文标题】如何为列中的每个单元格执行一个函数并遍历所有工作簿?【英文标题】:How to execute a function for each cell in a column and loop through all workbooks? 【发布时间】:2013-06-19 02:22:18 【问题描述】:

这是我目前所拥有的:

Sub TrimColumnD()
   Dim ws As Worksheet

   For Each ws In ThisWorkbook.Worksheets
   Dim c As Range
        For Each c In ActiveSheet.UsedRange.Columns("D").Cells
            c.Value = WorksheetFunction.Trim(c.Value)
        Next c
   Next ws

End Sub

修剪功能仅适用于第一个工作表中的单元格。

【问题讨论】:

确保使用适当的缩进清楚地格式化代码。在 sub 的顶部一起声明变量也是一个好主意。 【参考方案1】:

请更改此行:

For Each c In ActiveSheet.UsedRange.Columns("D").Cells

进入这个:

For Each c In ws.UsedRange.Columns("D").Cells

在您的代码中,内部循环指的是活动表,而它应该指的是代表工作表的ws variable

【讨论】:

以上是关于如何为列中的每个单元格执行一个函数并遍历所有工作簿?的主要内容,如果未能解决你的问题,请参考以下文章

循环遍历指定文件夹中的所有 excel 文件,并从特定单元格中提取数据的代码

VBA使用列中找到的格式查找并替换工作表中找到的所有单元格

如何为列中的单元格着色?熊猫,pygsheets

如何为 UICollectionViewFlowLayout 中的每个单元格添加标题/标签补充视图?

格式化每个工作表中的单元格

如何为 UICollectionView 中的单元格设置可变单元格间距