功能改变所有单元格中的文本

时间:2017-02-06 20:46:46

标签: vba excel-vba excel-2013 worksheet-function excel

我想要扫描X列和任何文本长度为>的单元格。 11 - 我想弹出一个消息框,要求用户改变它。一旦用户点击okay按钮,我就想要替换X列中的所有这些值。这是我的语法,但它不是迭代每个单元格。一旦我输入一个新的重命名值,宏将继续询问我,但它似乎不会在X列下面进一步迭代单元格。

为了拥有我想要的宏功能,我必须改变什么?

<%
    String[] questionsList = (String)request.getParameter("sg");
%>

1 个答案:

答案 0 :(得分:0)

我已经尝试过您的代码了。只做一点修改:

Function ShortenText()
Dim c As Range
Dim lRow As Long
Dim NewValue As String

    lRow = Cells(Rows.Count, 24).End(xlUp).Row

    For Each c In Range("X1:X" & lRow)
        Cells(c.Row, 2) = Len(c)
        If Len(c) > 11 Then
            NewValue = Trim(InputBox("What would you like to rename the value"))
            c.Select
            Selection.Replace What:=c.Value, Replacement:=NewValue, LookAt:=xlPart, _
            SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
      End If
    Next c

End Function

添加“c.Select”并关闭修剪功能“)”。