Excel 如何在范围内循环并为参数赋值
我面临一个有关Excel VBA代码的问题,希望任何人都能在这方面帮助我 我有一个Excel列,其范围为B2,直到B列的最后一行,如下所示:Excel 如何在范围内循环并为参数赋值,excel,vba,loops,Excel,Vba,Loops,我面临一个有关Excel VBA代码的问题,希望任何人都能在这方面帮助我 我有一个Excel列,其范围为B2,直到B列的最后一行,如下所示: _________________ |Column B Header| |===============| |apple | |orange | |strawberry | |blueberry | |_______________| 我想将单元格B中的所有值都赋给一个带有一些附加文本的参数 例如: f
_________________
|Column B Header|
|===============|
|apple |
|orange |
|strawberry |
|blueberry |
|_______________|
我想将单元格B中的所有值都赋给一个带有一些附加文本的参数
例如:
fruits = <Item>apple</Item><Item>orange</Item><Item>strawberry</Item><Item>blueberry</Item>
fruits=appleorange草莓蓝莓
这是到目前为止我的代码,在读取每个单元格后,我很难使每个值在后面继续
Dim c As Range
For each c In Range("B2:B" & lastrow)
fruits = "<Item>" & c.Value & "</Item>"
Next c
尺寸c作为范围
对于范围内的每个c(“B2:B”和lastrow)
水果=“”&c.价值&“”
下一个c
如果有人愿意在这方面帮助我,我真的很感激。
谢谢。要在循环时继续构建字符串,请将
水果
与自身连接起来:
fruits = fruits & "<Item>" & c.Value & "</Item>"
fruits=fruits&&c.值
或者您可以避免循环
Dim fruits As String
fruits = "<Item>" & Replace(Join(Application.Transpose(Range("B2", Cells(Rows.Count, 2).End(xlUp)).Value), "|"), "|", "</Item><Item>") & "</Item>"
将水果变暗为字符串
FROUTS=“”&Replace(连接(应用程序.转置(范围(“B2”),单元格(行数,2)。结束(xlUp)).Value),“|”),“|”和“
不带循环和变量标记名的函数
Function JoinedItems(rng As Range, Optional tag As String = "item") As String
Dim a$, b$: a = "<" & tag & ">": b = "</" & tag & ">"
JoinedItems = a & Evaluate("=TEXTJOIN(""" & b & a & """, False," & rng.Address & ")") & b
End Function
函数JoinedItems(rng作为范围,可选标记为String=“item”)作为字符串
Dim a$,b$:a=“”:b=“”
JoinedItems=a&Evaluate(“=TEXTJOIN(”“&b&a&”“”),False,“&rng.Address&”)&b
端函数
fruits=fruits&&c.Value&
Hi@BigBen,非常感谢您的帮助。它工作得很好。