假设我在 excel 中有一个带有域名的字段,我想颠倒子域、域和 tld 的顺序,以便进行排序。例如:
“my.sub.domain.example.org”变成“org.example.domain.sub.my”
你会如何在excel中做到这一点?
假设我在 excel 中有一个带有域名的字段,我想颠倒子域、域和 tld 的顺序,以便进行排序。例如:
“my.sub.domain.example.org”变成“org.example.domain.sub.my”
你会如何在excel中做到这一点?
我不确定你将如何使用工作表函数来完成它,创建一个函数来为你做这件事要容易得多。
如果您打开 VBA 编辑器,插入一个新模块并粘贴以下函数,您可以在工作表上使用它。
Public Function Reverse(ByVal Expression As String, ByVal Delimiter As String) As String
Dim Data() As String
Dim Result As String
Dim Index As Integer
Result = ""
Data = Split(Expression, Delimiter)
Index = UBound(Data)
Result = Data(Index)
Do
Index = Index - 1
Result = Result & Delimiter & Data(Index)
Loop While Index > 0
Reverse = Result
End Function
例子
A1 ="my.example.site.tld"
A2 ="=Reverse(A1,".")"
A2=="tld.site.example.my"
使用带有句点分隔符的列的文本。然后您可以使用 =concatenate(...) 或 &(串联操作数)按照您想要的顺序和格式将它们拼接在一起。
(但 NickSlash 发布的 VBA 答案很好,这是以防万一您想要非 VBA)