Excel公式:用字内破折号replace空格,除了字内破折号,并删除字内破折号之间的空格
我一直在寻找Stackoverflow的解决scheme,并在Excel中试验了几个小时。 我想知道如何用字内短划线replace空白区域,除了已经存在的字内短划线,以及删除excel中的字内短划线之间的拖尾和前导空格。 例如在一个Excel单元格中,我有:
Frontline Topspot for dogs 89 - 132 lbs (12 Month Supply)
我想转换成
Frontline-Topspot-for-dogs-89-132-lbs-(12-Month-Supply)
有任何想法吗? 这个问题的目的是将解决scheme应用于我的产品列表电子表格中的“产品名称”列。 有任何想法吗?
如果我理解正确,下面的步骤会起作用吗? 原来在单元格A1:
= SUBSTITUTE(TRIM(SUBSTITUTE(A1,“ – ”,“”)),“”,“ – ”)
或者,在VBA中,
Sub dashes() stringA = "Frontline Topspot for dogs 89 - 132 lbs (12 Month Supply)" stringB = Application.WorksheetFunction.Substitute(stringA, "-", " ") stringC = Application.WorksheetFunction.Trim(stringB) stringD = Application.WorksheetFunction.Substitute(stringC, " ", "-") End Sub
用空格replace现有的破折号,修剪多余的空格,并用破折号replace空格?
键入下一个单元格= SUBSTITUTE(A1,“”,“ – ”)
首先,处理“富吧”的情况:
=SUBSTITUTE(A1," - ", "-")
然后,处理“富吧”的情况:
=SUBSTITUTE(A1," ","-")
现在把这两个放在一起:
=SUBSTITUTE(SUBSTITUTE(A1," - ", "-")," ","-")
通过首先消除“ – ”,我们现在知道所有剩下的“”必须replace为“ – ”。
replace空格,任何与“ – ”的东西现在将是—
用。。。来代替 ”-”
=SUBSTITUTE(SUBSTITUTE(A1," ","-"),"---","-")