Mat*_*ttO 1 excel vba excel-vba
我构建了一个基于名称列表保存工作簿的宏.我收到了一个saveAs错误,因为某些新的列表项目/文件名中不允许这样做.
我需要一些帮助来编写一个代码来执行此操作:请注意,团队,名称,联赛和杯子的列表会更改每一行.
list item: team/ league
what I want: league
list item: team / league / cup
What I want: league-cup
List item; team / league / cup / score
what I want: league-cup-score
Run Code Online (Sandbox Code Playgroud)
我让它适用于第一个场景,那里只有一个/但无法找到休息.
InStr(Value, "/") > 0 Then
filename = Right(Value, (Len(Value) - InStr(Value, "/")))
Else
filename = Value
End If
Run Code Online (Sandbox Code Playgroud)
是我到目前为止所得到的.
谢谢
您可以拆分,修剪和加入:
Function MakeFileName(s As String) As String
Dim v As Variant, w As Variant
Dim i As Long, n As Long
v = Split(s, "/")
n = UBound(v)
ReDim w(1 To n)
For i = 1 To n
w(i) = Trim(v(i))
Next i
MakeFileName = Join(w, "-")
End Function
Run Code Online (Sandbox Code Playgroud)
例如:
Sub test()
Debug.Print MakeFileName("team/ league")
Debug.Print MakeFileName("team / league / cup")
Debug.Print MakeFileName("team / league / cup / score")
End Sub
Run Code Online (Sandbox Code Playgroud)
输出:
league
league-cup
league-cup-score
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
458 次 |
最近记录: |