Vba 在值之前修剪空白

Vba 在值之前修剪空白,vba,excel,Vba,Excel,我有一个问题修剪空白字符。当我在Excel中输入一个值并在该值前后加空格时,我会看到它周围有空格,但我不应该看到那些额外的空格 我想删除这些空格,但我不确定如何实现这一点,以下是我目前得到的输出: ServerName = " testing " 但是生成的输出应该是这样的 ServerName = "testing" 以下是我在项目中使用的代码: If Sheets(Itm).Cells(i, 2) = "Required1" Then

我有一个问题修剪空白字符。当我在Excel中输入一个值并在该值前后加空格时,我会看到它周围有空格,但我不应该看到那些额外的空格

我想删除这些空格,但我不确定如何实现这一点,以下是我目前得到的输出:

ServerName = "       testing     "          
但是生成的输出应该是这样的

ServerName = "testing"  

以下是我在项目中使用的代码:

If Sheets(Itm).Cells(i, 2) = "Required1" Then
    MsgBox "Enter the value for required field : " & Sheets(Itm).Cells(i, 1)
    Return
End If

Value = Replace(Sheets(Itm).Cells(i, 4).Value, vbLf, " ")
'Value = Sheets(Itm).Cells(i, 4).Value
替换:

Print #1, Sheets(Itm).Cells(i, 1) & "=" & Value
与:

替换:

Print #1, Sheets(Itm).Cells(i, 1) & "=" & Value
与:

试试这个(未经测试)

下面是一个示例代码,以了解它是如何工作的

Sub sample()
    Dim sample As String

    sample = "Sid"

    Debug.Print Len(sample) '<~~ This will give you 3

    sample = " " & vbNewLine & sample & vbNewLine & vbCrLf & vbLf

    Debug.Print Len(sample) '<~~ This will give you 11

    sample = Trim(sample)

    Debug.Print Len(sample) '<~~ This will give you 10

    sample = Application.WorksheetFunction.Clean(sample)

    Debug.Print Len(sample)  '<~~ This will give you 3
End Sub
子样本()
将样本设置为字符串
sample=“Sid”
Debug.Print Len(示例)试试这个(未测试)

下面是一个示例代码,以了解它是如何工作的

Sub sample()
    Dim sample As String

    sample = "Sid"

    Debug.Print Len(sample) '<~~ This will give you 3

    sample = " " & vbNewLine & sample & vbNewLine & vbCrLf & vbLf

    Debug.Print Len(sample) '<~~ This will give you 11

    sample = Trim(sample)

    Debug.Print Len(sample) '<~~ This will give you 10

    sample = Application.WorksheetFunction.Clean(sample)

    Debug.Print Len(sample)  '<~~ This will give you 3
End Sub
子样本()
将样本设置为字符串
sample=“Sid”

Debug.Print Len(示例)'不要使用与您的问题无关的标记。VB.NET不是VBA、VB6等…您是否尝试过
Trim
Application.WorksheetFunction.Clean
?Value=Replace(Sheets(Itm).Cells(i,4).Value,vbLf,”)而不是Value=Replace(Sheets(Itm).Cells(i,4).Value,vbLf,”),我已经从您的问题中删除了所有标记,请仅使用未排序的列表提供简要的细节点,而不是换行符。不要使用与您的问题无关的标记。VB.NET不是VBA、VB6等…您是否尝试过
Trim
Application.WorksheetFunction.Clean
?Value=Replace(Sheets(Itm).Cells(i,4).Value,vbLf,”)而不是Value=Replace(Sheets(Itm).Cells(i,4).Value,vbLf,”),我已经从您的问题中删除了所有标记,请仅使用未排序的列表提供简要的细节点,而不是换行符。如果该空格实际上不是空格而是特殊字符,则此代码将无法正常工作:)如果该空格实际上不是空格而是特殊字符,则此代码将无法正常工作:)谢谢您的电子邮件,你能在我的代码中更新它吗?我在上面发布的内容有什么让人困惑的地方?你能告诉我在哪里添加代码吗?很抱歉,谢谢你的回复。用我在上面发布的3行代码替换行
Value=Replace(Sheets(Itm).Cells(I,4.Value,vbLf,“”)
。谢谢你的电子邮件,你能在我的代码中更新它的困惑吗?我在上面发布的内容让人困惑的是什么?你能告诉我在哪里添加代码吗?很抱歉,感谢你的回复。请用我在上面发布的3行代码替换行
Value=Replace(Sheets(Itm).Cells(I,4).Value,vbLf,“”