excel中,怎么批量删除某个数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel中,怎么批量删除某个数据相关的知识,希望对你有一定的参考价值。

excel中,怎么批量删除某个数据如图所示
黄色区域内,我怎么批量的把N/A删除掉

要批量删除某一个数据,可分为以下两种情况。

一、删除表格中某数据对应的独立单元格中的内容

操作方法:查找——替换——全部替换为空格,即可达到批量删除的目的。如下图中所示,可将表格中所有“a12”全部替换为空格,完成删除操作。

应用场景:某些数据或数量统计表。

二、删除表格中该数据对应的整行的信息

操作方法:筛选——选中筛选出的整行删除,也可完成批量删除的目的。如下图1所示在“止回阀”一列中筛选要删除的数据,执行筛选命令,得到图二结果,删除筛选出的两行,在全选中“止回阀”一列,即完成批量删除数据对应行的信息。

应用场景:某些产品信息统计表,或员工信息统计表,例如删除处于某个年龄的员工信息,或某一价格的商品等。


参考技术A

1、这里以wps版本的excel为例,打开一个excel表格,这里有一列数据,我们想留下文字内容,删除数字部分。

2、打开一个空白的wps word文档,然后在excel中将表格复制黏贴到空白的word文档中,只需要快捷键ctrl+c和ctrl+v即可。

3、在word中点击快捷键ctrl+h调出【查找和替换】设置框。在英文输入状态下查找内容框处输入[0-9],然后点击【高级搜索】-【使用通配符】-【全部替换】。

4、关闭【查找和替换】设置框,则word中数字部分已经被删除。然后把剩余的数据部分再复制黏贴到excel工作薄中。

5、如果是只留数字部分,其余剩余的部分删除,又该怎么办呢?同样地,把表格数据复制到word中,点击ctrl+h调出【查找和替换】设置框。与之前不同的是,查找内容输入[!0-9]。

参考技术B

  具体操作步骤如下:

     如果单元格中的数挨在一起,先选中一个单元格并按住鼠标右键,再拖动鼠标,即可选中所有数字。如单元格分散在各处,则先左手按住Ctrl件,右手逐一点击需选中的数即可。

    在选中的最后一个单元格中,点击鼠标右键,选择删除功能即可将选中数据批量删除(按下delete键则是将所有数据批量清除)。

    备注:如想批量更改数据,则可在最后一个被选中的单元格处,输入更改后的数据,再同时按住Ctrl+enter件,这样,所有被选中的数字就批量修改了。

参考技术C

这个问题可用VBA来解:

例如:

 

可用如下VBA程序批量删除表二中的数据只留下表一中名称的数据

Sub 批量删除()

Dim i As Integer

For i = 3 To 15

  If Range("A3:A9").Find(Range("C" & i).Value, , , xlWhole) Is Nothing Then

    Range("D" & i).ClearContents

  End If

Next i

End Sub

参考技术D 如果是 值,
Ctrl+F 查找 N/A 点 查找全部 按Ctrl+A 关闭查找对话框 按 Delete键

如果是公式 #N/A
Ctrl+G 定位条件 公式----错误值 确定
按Delete键本回答被提问者和网友采纳

Excel批量导入数据之数据校验

 

最近,工作上接到Excel批量导入数据的需求。在这里,小编想分享的是数据校验那些事,至于如何读取Excel数据,大家可以百度下。

一般而言,Excel批量导入数据,我们都会给客户提供一个固定的模板以输入我们期望的数据。然而,客户的操作,我们是无法预料的,他们有可能增加一列或者删除一列,有可能去掉Excel某个字段的输入限制等等。

Excel模板,有可能只有一个,有可能若干个。各个模板的数据列,或交叉相同,或存在个性化列。

同一个模板,也许因某列数据的不同,而需要填充不同数据列。
......

面对一系列不确定因素,小编在此提出小小的解决方案。

我们可以定义这么一个类:

 1      public class ExcelTemplate
 2     {
 3         /// <summary>
 4         /// 列名
 5         /// </summary>
 6         public string ColumnName { get; set; }
 7 
 8         /// <summary>
 9         /// 是否必填
10         /// </summary>
11         public bool IsRequire { get; set; }
12 
13         /// <summary>
14         /// 列类型
15         /// </summary>
16         public string ColumnType { get; set; }
17     }

有这么一个模板:

创建表头类

1 var myExcelTemplate = new List<ExcelTemplate>();
2 myExcelTemplate.Add(new ExcelTemplate() { ColumnName = "序号", IsRequire = true, ColumnType = "string" });
3 myExcelTemplate.Add(new ExcelTemplate() { ColumnName = "姓名", IsRequire = true, ColumnType = "string" });
4 myExcelTemplate.Add(new ExcelTemplate() { ColumnName = "入职日期", IsRequire = true, ColumnType = "DateTime" });

假如已经成功读取Excel数据

1 System.Data.DataTable excelData = GetDataFromExcel(excelPath);

这时候,校验Excel可以这样子~~

 1             //判断是否存在数据行
 2             if (excelData == null || excelData.Rows.Count <= 0)
 3             {
 4                 //不存在数据行
 5                 return;
 6             }
 7 
 8             //遍历所有行
 9             foreach (System.Data.DataRow row in excelData.Rows)
10             {
11                 //遍历列
12                 foreach (var item in myExcelTemplate)
13                 {
14                     //判断列合法性
15                     if (!excelData.Columns.Contains(item.ColumnName))
16                     {
17                         //列非法
18                         return;
19                     }
20 
21                     //判断列是否必填
22                     if (item.IsRequire && (row[item.ColumnName] == null || string.IsNullOrWhiteSpace(row[item.ColumnName].ToString())))
23                     {
24                         //空列
25                         return;
26                     }
27 
28                     //根据列类型尝试类型转换
29                     switch (item.ColumnType)
30                     {
31                         case "DateTime":
32                             {
33                                 if (!row[item.ColumnName].IsDateTime())
34                                 {
35                                     //类型转换失败
36                                     return;
37                                 }
38                                 break;
39                             }
40                     }
41 
42                     //...
43 
44                 }
45             }

以上是关于excel中,怎么批量删除某个数据的主要内容,如果未能解决你的问题,请参考以下文章

在excel中怎么快速批量删除单元格背景颜色为红色的数据?

如何批量删除excel表格中数字前后的方括号

excel表中如何大批量删除数据?

vue项目中表格中批量删除

如何在excel里批量删除空白行列?

excel如何批量删除表头包含指定字符的列