Tag: 小写

VBA代码,如何在Excel中将特定单词从大写更改为小写

我有一个地址Excel电子表格。 我想把一些单词改成小写(而不是整个单元格!)。 这些话是: TH到(街道名) 第三至第三 2ND到2 1ST到1 我知道如何将整个单元格更改为小写或“正确”,但我真的需要一个function,将这些不正确的大写字母改为小写字母。

试图了解差异

我希望没有人会因为我提出一个关于工作代码的问题而感到不高兴。 不过,有人告诉我,这也是为了学习,所以我希望这样可以。 我想要的是试图理解我写的两个代码之间的区别,一个是工作的,一个是失败的。 此代码是一个失败的版本: Sub Lowercase() Dim Seq As Range Set Seq = Range(Range("A2"), ActiveCell.SpecialCells(xlLastCell)) For Each cell In Seq cell.Value = LCase(cell.Value) Next cell End Sub 它确实把事物放在小写字母中,但它会一直循环,直到closures或最小化Excel为止。 思考一个较旧的代码,我将代码更改为: Sub Lowercase() Dim Seq As Range, v As Variant Dim L As Long, i As Long Set Seq = Range(Range("A2"), ActiveCell.SpecialCells(xlLastCell)) For Each cell In Seq […]

将整个范围转换为小写,而不通过单元格间接循环

我正在寻找VBA代码,它将整个单元格范围并将其转换为小写字母。 我发现以下内容: [A1:A20] = [index(lower(A1:A20),)] 这对一个固定的范围工作正常(不完全理解语法,但发现以下post:) 详细介绍上面的代码 我的问题是这样的: 我希望能够dynamic设置范围,因为我正在处理更改范围大小。 但是,以下不起作用,我似乎无法在VBA中使用INDIRECT()。 Range("A1:A" & n) = [index(lower(Range("A1:A" & n)),)] 有没有办法做到这一点? 我真的想避免使用for循环,因为我怀疑这应该是更快..