You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Sheets中将GB/MB单位字符串转换为GB数值?

存储大小列单位转换实现方法

核心换算逻辑和你给出的示例匹配,采用二进制换算标准:1 GB = 1024 MB,按单位分别处理即可:

  • 后缀为mb的条目:数值本身就是MB单位值,GB单位值 = 数值 / 1024,最终保留4位小数
  • 后缀为gb的条目:数值本身就是GB单位值,MB单位值 = 数值 * 1024,最终保留1位小数

下面是两种最常用的实现方式,按需选择即可:

方法1:Excel/WPS表格操作(无代码场景)

假设原始Size列放在A列,A1为表头,A2开始是具体的存储大小数据:

  1. 拆分数值与单位:
    • B2单元格输入公式 =VALUE(LEFT(A2,LEN(A2)-2)),提取纯数字部分
    • C2单元格输入公式 =RIGHT(A2,2),提取单位部分
  2. 计算对应单位数值:
    • MB列(D列)D2单元格输入公式 =IF(C2="mb",B2,B2*1024)
    • GB列(E列)E2单元格输入公式 =IF(C2="gb",B2,B2/1024)
  3. 选中B2到E2单元格,下拉填充到所有数据行,最后设置单元格格式:GB列保留4位小数,MB列保留1位小数,修改对应表头就得到你要的结果。

方法2:Python脚本批量处理(大数据量场景)

如果数据量很大,用几行代码就能批量跑完,示例代码如下:

# 原始Size列数据
size_list = ["670.2mb", "668.4mb", "3.2gb", "1.1gb", "479.7mb"]
res = []

for s in size_list:
    num = float(s[:-2])
    unit = s[-2:]
    if unit == "mb":
        mb_val = num
        gb_val = round(num / 1024, 4)
    else:
        gb_val = num
        mb_val = round(num * 1024, 1)
    res.append([gb_val, mb_val])

# 格式化输出结果
print(f"{'Size in GB':<12}{'Size in MB'}")
for row in res:
    print(f"{row[0]:<12}{row[1]}")

运行代码后输出的结果和你给出的目标格式完全一致。

内容的提问来源于stack exchange,提问作者Sagar Vaghela

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.18 16:15:45