【问题标题】:Excel: Pasting "USD 12.50" data into a sheet -> can a custom number format treat this as a number ON PASTE ACTION?Excel:将“12.50 美元”数据粘贴到工作表中 -> 自定义数字格式可以将其视为粘贴操作中的数字吗?
【发布时间】:2020-10-12 15:32:00
【问题描述】:

帮助面临失业风险的密友;这个周末我们花了几个小时试图帮助她自动执行一项重复性任务。

  1. 她粘贴(来自一些我不知道的来源)一个表,其中包含一个特别需要管理的字段。这些值是:

“USD 12.50” - 例如 - 不带引号

问题:无法对这列值求和/运算,因为它没有格式化为数字

  1. 她正在使用 MID 功能;我知道有一些文本运算符可以处理这一切——但我说我们需要超越这一点,导致每次手动转换所有这些值,搞砸列顺序(添加新值只是为了提取 # 值)等有点容易出错。我之前也向她展示过 Flash Fill,但这不是我想要的。

我的底线问题是:

是否有可能让我们知道将要输入“USD 12.50”或“USD 49.99”文本值的那一列(也许粘贴值是答案的一部分)--> 是否可以保留作为一个自定义数字字段,之后期望“USD”字符串 + 一个浮点数?

如果您“愚蠢地粘贴”到 Excel 中,我猜它会清除您可能预先格式化的自定义数字格式?

(最后的奖金请求:我已经玩了至少一个小时,但我一生都无法弄清楚如何首先使用这种自定义数字格式并且符合求和条件的单元格中的值、最小值/最大值/等等……伙计,我知道一点正则表达式,但我真的在为自定义数字格式苦苦挣扎。)

在此先感谢,对篇幅表示抱歉。

【问题讨论】:

  • 你看过文本到列吗?
  • 这些价值从何而来?如果您复制并粘贴,请尝试粘贴值。
  • 简短回答:条件格式不能做到这一点。但它很容易用 VBA 完成。这是你的选择吗?

标签: excel format


【解决方案1】:

如果你不能改变来源,但所有进来的数字与USD 123的格式大致相同,那么你可以

  • 将值粘贴到 A 列中
  • 使用公式=RIGHT(A1,LEN(A1)-FIND(" ",A1))

这首先FINDs 货币和数字之间的空格,然后使用RIGHT 返回文本的其余部分。

这适用于格式良好的输入,并且允许您重复多次而不使用文本到列向导。

Excel 中的字符串操作让您走得更远!

【讨论】:

  • 啊,谢谢!这是一个优雅的解决方案,因为 RIGHT() 函数可能会根据货币价值的长度而搞砸……非常感谢!
【解决方案2】:

选择列, 按 [Ctrl]+[h] 进行搜索和替换, 在搜索中输入不带引号的“USD”, 将 REPLACE 留空, 按[全部替换]

【讨论】:

    猜你喜欢
    • 2010-11-08
    • 2015-07-29
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多