大家好,我是VBA Excel的新手,所以我仍在学习正确的语法,因此也是我的问题。我正在尝试创建一个脚本,该脚本会将单元格中的文本转换为适当大小写格式,但某些缩写(让我们说“ DAD”,“ ABC”,“ CBD”除外)应为大写。
从我所做的研究中,尤其是这些用于正确案例转换和条件格式设置的链接,我需要使用该Select Case
语句,但是我不确定如何在我的代码中实现它。
这是我到目前为止的内容:
Sub ProperCase()
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleID = "Conditional Proper Case Conversion"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleID, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
Rng.Value = Application.WorksheetFunction.Proper(Rng.Value)
Next
End Sub
运行此代码后,它将请求一定范围的单元格以执行转换。我的问题是,如何为某些字符串/文本(即缩写)添加条件功能?
应该这样做:
Sub ProperCase()
Dim r As Range
Const EXCEPTIONS$ = ".dad.abc.cbd."
On Error Resume Next
For Each r In Application.InputBox("Range", "Conditional Proper Case Conversion", Selection.Address, Type:=8)
If InStrB(EXCEPTIONS, "." & LCase(r) & ".") Then
r = UCase(r)
Else
r = WorksheetFunction.Proper(r)
End If
Next
End Sub
只需编辑EXCEPTIONS常量即可。确保句点跨越EXCEPTIONS字符串中的每个项目。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句