Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 在列中选择特定单元格并对所选单元格执行操作?_Excel_Cells - Fatal编程技术网

Excel 在列中选择特定单元格并对所选单元格执行操作?

Excel 在列中选择特定单元格并对所选单元格执行操作?,excel,cells,Excel,Cells,我有一个长列,显示多个数值和非数值。我想选择那些非数字单元格,即旁边有字母(单位)的数字,删除字母,然后从所选单元格中减去一个值,而不接触其他单元格。例如,如果E1:E5的值分别为1.3kg、3.2、1.1kg、1.5、2.1kg,我想选择E1、E3和E5并从这些选定的单元格中减去0.2,那么新值将变为1.1、3.2、0.9、1.5、1.9。将此公式放入您上面描述的电子表格中的单元格F1: =IF(RIGHT(E1, 2)="kg", LEFT(E1, LEN(E1) - 2) - 0.2, E

我有一个长列,显示多个数值和非数值。我想选择那些非数字单元格,即旁边有字母(单位)的数字,删除字母,然后从所选单元格中减去一个值,而不接触其他单元格。例如,如果E1:E5的值分别为1.3kg、3.2、1.1kg、1.5、2.1kg,我想选择E1、E3和E5并从这些选定的单元格中减去0.2,那么新值将变为1.1、3.2、0.9、1.5、1.9。

将此公式放入您上面描述的电子表格中的单元格
F1

=IF(RIGHT(E1, 2)="kg", LEFT(E1, LEN(E1) - 2) - 0.2, E1)

您可以将此公式复制到
F
列,以覆盖单元格范围
E1:E5

要做到这一点,您需要在另一列中创建公式:

=IF(ISNUMBER(A1),A1,SUBSTITUTE(A1,"kg","")-0.2)
然后可以将这些值复制并粘贴回列E中


唯一的另一种方法是通过VBA进行过滤。

过滤列,创建一个包含需要减去的值的单元格,复制该值,在该列上执行“特殊过去”,然后选中“减去”。这从整列中减去了0.2!这不是我想要的。我将公式复制到F1,将F1拖到F5,然后在F1:F5中得到了E1:E5的副本!没有变化!我相信您可能没有正确使用Excel。公式应该可以。单元格中可能有尾随空格。请使用E列中的确切数据更新OP。我有10多万行,问题与我描述的完全一样。应用此公式给了我#值@瑞尔森:他的数据是肮脏的。我们的两种解决方案都应该很有效。