我有一个相当复杂的(至少对我而言)嵌套的 IF(ISNUMBER 公式,我想包装或包含 SUBSTITUTE 以从公式的结果中删除“”并将“ ”替换为空格“”。
当公式相当基本时,我在这里问了一个类似的问题,但由于这个问题得到了感激的回答,我认为一个新问题是合适的。
下面的公式在单元格 B1 中输入,并查看单元格 A1 中包含字母和数字的字符串,并在字符串中查找单词 Wav、mp3、flac 或 mogg 的出现。然后,该公式运行嵌套公式,查找并显示与 Wav、mp3、flac 或 mogg 一词相关的额外信息。
这一切都很好,虽然我知道公式并不优雅,但是它从中提取结果的字符串有“_”分隔字符串中的所有单词,我试图用一个简单的空格“”在公式结果中替换这些单词。
字符串看起来像 Artist_-_Album_Title_[Source]_(14_Tracks)_44.1_kHz_16_bit_Wav
该公式实际上是提取“16_bit”部分,也是 32、64 或 128_bit,我需要结果为“16 位”等等。
主要配方
=IF(ISNUMBER(SEARCH("wav",A1)),MID(A1,SEARCH("kHz",A1)+4, SEARCH("Wav",A1)-SEARCH("KHz",A1)-5),IF(ISNUMBER(SEARCH("flac",A1)),MID(A1,SEARCH("kHz",A1)+4, SEARCH("flac",A1)-SEARCH("KHz",A1)-5),IF(ISNUMBER(SEARCH("mp3",A1)),MID(A1,SEARCH("kHz",A1)+4, SEARCH("mp3",A1)-SEARCH("KHz",A1)-5),IF(ISNUMBER(SEARCH("mogg",A1)),MID(A1,SEARCH("kHz",A1)+4, SEARCH("mogg",A1)-SEARCH("KHz",A1)-5),"NO"))))
为了使事情更复杂,我使用下面的内容来检查 A 列中的单元格是否为空白,如果不是,则运行上述公式,但如果 A1 为空白,则它什么也不做。
=IF(A1="","",SUBSTITUTE(A1,"_"," "))
正如我所说,它们单独工作都很好,但这远高于我的技能水平,我无法将两者结合起来?
一次吃一口这头大象。
你有一个有效的公式。接下来,将 Substitute() 函数包裹在您的公式周围。
编辑公式时,使用 Alt+Enter 换行并更好地识别公式的元素
现在,围绕它包装 IF 语句。您可以使用空格来缩进公式的各个部分