gpt4 book ai didi

excel - 清除具有空字符串值的单元格

转载 作者:行者123 更新时间:2023-12-04 22:03:47 25 4
gpt4 key购买 nike

我正在尝试将 excel 文件导出到访问数据库。某些列/字段需要具有字段类型 号码 ,因为这些字段稍后将在涉及 sum、count 等函数的查询中使用。

现在的问题是excel中的相应列包含空字符串,在导出到访问数据库时会产生问题(字段类型不匹配)。即使excel中的这些列将单元格格式化为数字,问题仍然存在

我使用以下 VBA 代码消除了这些列中的所有空字符串,它适用于相当多的行。但是excel文件会有350000多行,而且对于这么多的行,代码似乎永远运行。

任何有关改进我的代码或采取其他方法的提示将不胜感激

Dim r As Range
For Each r In ActiveSheet.Range("AG2:AJ" & lastRow)
With r
If .Value = "" Then
.Clear
End If
End With
Next

最佳答案

如果您确实有公式,这应该对您有用,并在我的测试数据集上运行,该数据集在不到 5 秒的时间内有 360000 行:

Sub tgr()

Dim lCalc As XlCalculation
Dim lCol As Long
Dim lLastRow As Long

With Application
lCalc = .Calculation
.Calculation = xlCalculationManual
.ScreenUpdating = False
.EnableEvents = False
End With

lLastRow = Range("AG:AJ").Find("*", Range("AG1"), , , , xlPrevious).Row

For lCol = Columns("AG").Column To Columns("AJ").Column
With Cells(1, lCol).Resize(lLastRow)
.AutoFilter 1, "="
.Offset(1).Resize(.Rows.Count - 1).ClearContents
.AutoFilter
End With
Next lCol

With Application
.Calculation = lCalc
.ScreenUpdating = True
.EnableEvents = True
End With

End Sub

关于excel - 清除具有空字符串值的单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28990443/

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