首页 > 解决方案 > 去掉 VBA 连接文本框中的最后四个字符

问题描述

我有一个代码用于连接突出显示的单元格,它们之间有一个分隔的“或”。它将数据放入文本框中。我的问题是它在文本字符串的末尾添加了一个最终的“或”。我希望文本自动删除最后一个“或”或根本不放入。

 Dim rCell As Range, strJoin As String
 Dim box As TextBox
 Set box = ActiveSheet.TextBoxes.Add(ActiveCell.Offset(1, 1).Left, _
 ActiveCell.Offset(1, 1).Top, ActiveCell.Offset(1, 3).Left, _
 ActiveCell.Offset(6, 1).Top)

 With box
 .Text = vbNullString

 For Each rCell In Selection
 strJoin = rCell
 box.Text = box.Text & strJoin & " OR "
 Next rCell

 End With

End Sub

我有一系列这些用于创建 SQL 查询,而不必手动删除最后一个单词会很可爱。

提前感谢您提供的任何帮助。

标签: excelvbatextboxconcatenation

解决方案


我喜欢这种模式:

Dim sep as string

For Each rCell In Selection
    box.Text = box.Text & sep & rCell.Value
    sep = " OR "
Next rCell

推荐阅读