在 Excel 中将单元格列从分钟“就地”转换为小时和分钟

在 Excel 中将单元格列从分钟“就地”转换为小时和分钟

Excel 2010 工作表中有几列数据以分钟为单位,我想将它们转换为小时和分钟(数据源将仅生成使用分钟的 Excel 工作簿)。

我怎样才能转换这些值到位转换为小时和分钟的文本字符串。

例如,如果我有一个F1包含值的单元格300并将此公式放入同一个单元格中,我会得到循环引用错误:

=INT(F1/60)&" h "&MOD(F1,60)&" m"

我可以隐藏包含原始值的单元格,并使用第二列来执行转换公式,但这意味着对于五列长数字来说,需要一个尴尬的额外步骤。

有没有办法做到这一点,而无需创建额外的单元格来保存计算值?

答案1

我同意 Excellll 的观点;您将需要 VBA 将现有值转换为字符串值。

此方法不会产生文本字符串;但它可能帮助您获取所需的格式。

假设这是我的会议纪要:

在此处输入图片描述

  1. 在任意空白单元格中输入内容1440。选择此单元格并按Ctrl+ C

  2. 选择包含分钟的范围。

  3. 特殊粘贴>价值观>划分

  4. 点击好的。 结果:

    在此处输入图片描述

  5. 再次选择数字范围并按Ctrl+ 1

  6. 数字>风俗

  7. 输入格式:

    [h] "h" mm "m"

结果:

在此处输入图片描述

如果您想将其改回分钟:

  1. 在任意空白单元格中输入内容1440。选择此单元格并按Ctrl+ C
  2. 选择包含您的小时/时间的范围。
  3. 选择性粘贴 > 数值 > 乘以。
  4. Ctrl+ 1。将数字格式恢复为一般的
  5. 完成后,您可以摆脱 1440 单元。

要以十进制形式获取小时数,请使用60而不是1440。因此,对于 330(分钟),您将得到 5.5(小时)。

答案2

循环引用是因为您尝试在数据所在的单元格上运行公式。您需要将公式放在不同的单元格中,以便计算结果。如果您不想看到第一个单元格(总分钟数),您可以隐藏该列。我在 F1 中用 300 测试了这一点,并将公式放在 F2 中,它运行正常。

相关内容