excel - VBA excel 连接中的额外空格
问题描述
我有一个 VBA 代码,我必须在其中循环某个范围并使用一些连接填充它,但我的 VBA 代码添加了不需要的空格。例如,让我们假设以下示例:
code = "NV"
ac = "Curncy"
With wsNew
Set rng = .Range(Cells(2, 2), Cells(2, 2).End(xlDown))
For Each r In rng
If r.Value = 17 Or r.Value = 18 Or r.Value = 19 Then
r.Offset(, 1) = code + r.Offset(, -1).Value + Str(Right(r.Value, 1)) + " " + Str(r.Value) + _
" " + ac
Else
r.Offset(, 1) = code + r.Offset(, -1).Value + Str(Right(r.Value, 1)) + _
" " + ac
End If
Next r
End With
对于第一个单元格(r
示例中的变量),我有r.Value = 18
并且r.offset(,-1).Value = U
我期望NVU8 18 Curncy
为我的r.Offset(, 1)
. 相反,代码添加了空格,我得到NVU 8 18 Curncy
了 U 和 8 之间的一个空格(将被删除)和 8 和 18 之间的 2 个空格,而不仅仅是一个。
解决方案
从Str
文档:
将数字转换为字符串时,始终为数字的符号保留前导空格。如果 number 为正数,则返回的字符串包含前导空格并隐含加号。
不要使用Str
, 和使用&
来连接,而不是+
. &
强制两个表达式的字符串连接。
r.Offset(, 1).Value = code & r.Offset(, -1).Value & Right(r.Value, 1) & " " & r.Value & _
" " & ac
推荐阅读
- html - 是否可以在另一个 z 索引元素中独立设置 z 索引?
- javascript - 如何在javascript中使图片再次可拖动?
- spring-boot - Spring Boot 云原生应用程序是否需要 Spring Cloud Kubernetes?
- azure-devops - 访问私有 Nuget 提要时出错
- vue.js - 导航栏后面的内容
- python - 一个新的类方法的__self__ 仍然引用以前的类?
- okhttp - OkHttp 不保持空闲连接以保持活动状态
- flutter - 将列添加到底部应用栏使其全屏显示
- grails - Grails 我不明白如何将异步与数据服务一起使用
- bash - 计算文本文件中任何单词的出现次数