我正在制作一个电子表格,该电子表格用于对大量(10,000 多个)音频文件进行编目,这些文件可以是 Wav、Flac、mp3、Ape 和 ._Pro Tools 格式。
数据作为平面工作表提供给我,我在处理每个轨道的轨道长度信息时遇到问题。
在工作表中,每个轨道的长度提供为 00:06:11 单元格似乎是 hh:mm:ss 的自定义格式。有些曲目的长度可能超过一个小时 (02:06:11),有些可能只有几分钟 (00:06:11),而另一些则只有几秒钟 (00:00:11)。
我需要删除无关的 00 & : 取决于每个文件的长度,例如 02:06:11 变为 2:06:11, 00:06:11 变为 6:11 & 文件少于 60 秒 00:00:11变成0:11。Fluff13 在 excelforum.com 上给了我公式=IF(TrackDataImport!C2<1/24,"mm:ss","hh:mm:ss")
,它查看单元格并返回该单元格中的数据是分钟和秒还是小时、分钟和秒。但是我一直无法将其转换为能够适当格式化目标单元格的多标准公式。它也没有告诉我它是否只是“ss”
我知道这=TEXT(TrackDataImport!C2,"hh:mm:ss")
会将输入的单元格中的数据格式化为各种格式,但我需要一个公式来查看传入的数据,确定它是否h:mm:ss, mm:ss or m:ss or ss
(但添加“0:”
回来使其变为“0:11”
)并应用哪种格式适合。
我研究了 Excel TIME 功能,但我发现它在每个网站上似乎都使用它来处理物理时间,例如:12.01 pm 等等。如此混乱。
几乎但不完全满足您要求的单元格自定义格式样式是
它会抑制小时位的前导零,但不会抑制两位数的分钟。原因是只能有三个条件,但需要四个。
条件中使用的数字为 0,416666 ≈ 10/24,相当于 10 小时(需要两位小时位)和 0,04166 ≈ 1/24,相当于 1 小时(需要一位小时位) .
我认为这个公式有效:
否则 -
您可以按如下方式尝试 UDF:
您需要打开开发人员窗口(ALT F11 应该可以工作)。然后插入一个模块并粘贴代码。用作普通函数,如果您不想保留该函数,只需复制并粘贴值,然后删除代码。