-
2022-01-06 17:33:43
protected void RemoveEmpty(DataTable dt)
{
List<DataRow> removelist = new List<DataRow>();
for (int i = 0; i < dt.Rows.Count; i++)
{
bool IsNull = true;
for (int j = 0; j < dt.Columns.Count; j++)
{
if (!string.IsNullOrEmpty(dt.Rows[i][j].ToString().Trim()))
{
IsNull = false;
}
}
if (IsNull)
{
removelist.Add(dt.Rows[i]);
}
}
for (int i = 0; i < removelist.Count; i++)
{
dt.Rows.Remove(removelist[i]);
}
}
更多相关内容 -
将Excel数据写入Word模板并删除多余的空行
2021-04-26 12:12:17Private Sub CommandButton输出通知到Word文件_Click()Dim Word对象 As New Word.Application, 当前路径, 导出文件名, 导出路径文件名, i, jDim Str1, Str2当前路径 = ThisWorkbook.Path最后行号 = Sheets("数据")....Private Sub CommandButton输出通知到Word文件_Click()
Dim Word对象 As New Word.Application, 当前路径, 导出文件名, 导出路径文件名, i, j
Dim Str1, Str2
当前路径 = ThisWorkbook.Path
最后行号 = Sheets("数据").Range("B65536").End(xlUp).Row
判断 = 0
For i = 2 To 最后行号
导出文件名 = "发货单"
FileCopy 当前路径 & "\发货单(模板).doc", 当前路径 & "\" & 导出文件名 & "(" & Sheets("数据").Range("A" & i) & ").doc"
导出路径文件名 = 当前路径 & "\" & 导出文件名 & "(" & Sheets("数据").Range("A" & i) & ").doc"
With Word对象
.Documents.Open 导出路径文件名
.Visible = False
For j = 1 To 17 '填写文字数据
Str1 = "数据" & Format(j, "000")
Str2 = Sheets("数据").Cells(i, j + 1)
.Selection.HomeKey Unit:=wdStory '光标置于文件首
If .Selection.Find.Execute(Str1) Then '查找到指定字符串
.Selection.Font.Color = wdColorAutomatic '字符为自动颜色
.Selection.Text = Str2 '替换字符串
End If
Next j
.ActiveDocument.Tables(1).Rows(1).Select
.ActiveDocument.Application.Selection.InsertRowsBelow Sheets("数据").Range("s56565").End(3).Row - 1
For K = 2 To Sheets("数据").Range("s56565").End(3).Row
For j = 1 To 2 '填写表格数据
.ActiveDocument.Tables(1).Cell(K, j).Range = Sheets("数据").Cells(K, j + 17)
' .ActiveDocument.Tables(1).Cell(3, j).Range = Sheets("数据").Cells(i + 1, j + 17)
Next j
Next
.ActiveDocument.Tables(2).Rows(1).Select
.ActiveDocument.Application.Selection.InsertRowsBelow Sheets("数据").Range("T56565").End(3).Row - 1
For K = 2 To Sheets("数据").Range("T56565").End(3).Row
' For j = 1 To 1 '填写表格数据
.ActiveDocument.Tables(2).Cell(K, 1).Range = Sheets("数据").Cells(K, 20)
'Next j
Next
.ActiveDocument.Tables(3).Rows(1).Select
.ActiveDocument.Application.Selection.InsertRowsBelow Sheets("数据").Range("U56565").End(3).Row - 1
For K = 2 To Sheets("数据").Range("U56565").End(3).Row
' For j = 1 To 1 '填写表格数据
.ActiveDocument.Tables(3).Cell(K, 1).Range = Sheets("数据").Cells(K, 21)
'Next j
Next
.ActiveDocument.Tables(4).Rows(1).Select
.ActiveDocument.Application.Selection.InsertRowsBelow Sheets("数据").Range("V56565").End(3).Row - 1
For K = 2 To Sheets("数据").Range("V56565").End(3).Row
For j = 1 To 4
.ActiveDocument.Tables(4).Cell(K, j).Range = Sheets("数据").Cells(K, j + 21)
Next
Next
.ActiveDocument.Tables(5).Rows(1).Select
For K = 2 To Sheets("数据").Range("R56565").End(3).Row
.ActiveDocument.Tables(5).Cell(1, 2).Range = .ActiveDocument.Tables(5).Cell(1, 2).Range & Sheets("数据").Cells(K, 26)
Next
.ActiveDocument.Tables(5).Rows(3).Select
For K = 2 To Sheets("数据").Range("aa56565").End(3).Row
If Sheets("数据").Cells(K, 27) <> "" Then
A = A + 1
.ActiveDocument.Tables(5).Cell(A + 2, 2).Range = Sheets("数据").Cells(K, 27)
End If
Next
End With
Word对象.Documents.Save
Word对象.Quit
Set Word对象 = Nothing
Next i
If 判断 = 0 Then
i = MsgBox("已输出到 Word 文件!", 0 + 48 + 256 + 0, "提示:")
End If
End Sub
-
java实现删除excel内容之间空行
2013-05-18 15:43:47java实现删除excel内容之间空行,需要导入皮包。 -
java使用poi删除excel中的空行
2021-03-14 17:35:08根据自己实际操作,poi中lastRowNum方法获取行数的是excel最后有数据的一行,从0开始...但是需要将成功的数据的条数,和失败条数返回,这种情况我的做法就是将成功的条数从excel中删除,使用sheet.removeRow(sheet....根据自己实际操作,poi中lastRowNum方法获取行数的是excel最后有数据的一行,从0开始
而physicalNumberOfRows方法获取的行数是excel最后有数据的一行减去最后一行之前的空白行
工作中有一个需求是,上传excel文件导入数据,但是需要将成功的数据的条数,和失败条数返回,这种情况我的做法就是将成功的条数从excel中删除,使用
sheet.removeRow(sheet.getRow(40));
但是这个方法我们删除的只是数据,当前行并没有删除,所以留下来的是一个空行
这种情况就需要将空行后边的数据全部向前移一行,用到的方法是
sheet.shiftRows(i+1,physicalNumberOfRows,-1);
二个参数为需要移动的行的区间,第三个参数负数代表向前移,正数代表向后移
具体代码:
FileInputStream fileInputStream = new FileInputStream("D:\\MyDocuments\\itw_renzm\\桌面\\file.xls");
HSSFWorkbook workbook = new HSSFWorkbook(fileInputStream);
HSSFSheet sheet = workbook.getSheetAt(0);
int physicalNumberOfRows = sheet.getPhysicalNumberOfRows();
int lastRowNum = sheet.getLastRowNum();
//清除excel当前行
sheet.removeRow(sheet.getRow(10));
sheet.removeRow(sheet.getRow(20));
sheet.removeRow(sheet.getRow(21));
sheet.removeRow(sheet.getRow(22));
sheet.removeRow(sheet.getRow(23));
sheet.removeRow(sheet.getRow(24));
sheet.removeRow(sheet.getRow(40));
System.out.println(lastRowNum+"------"+physicalNumberOfRows);
for(int i =1;i
Row row = sheet.getRow(i);
Cell cell = null;
String cellValue = "";
if (row!=null){
cell = row.getCell(0);
cellValue = POIUtil.getCellValue(cell);
}
if (row==null||cell==null||cellValue==""){
sheet.shiftRows(i+1,lastRowNum,-1);
i--;
//减去一条空行,总行数减一。
lastRowNum--;
}
}
FileOutputStream fileOutputStream = new FileOutputStream("D:\\MyDocuments\\itw_renzm\\桌面\\file1.xls");
workbook.write(fileOutputStream);
fileOutputStream.close();
workbook.close();
fileInputStream.close();
}
-
如何快速删除excel中的所有空行或空列
2019-01-08 14:04:29amp;wfr=spider&for=pc 近几年“今日头条”发展的非常好,最大的特点就是能够根据用户阅读习惯推送内容,用得越久,今日头条就越懂你。这是大数据时代的产物,也是自媒体...自习室君,我经常遇到excel 中...http://baijiahao.baidu.com/s?id=1579366199398628194&wfr=spider&for=pc
近几年“今日头条”发展的非常好,最大的特点就是能够根据用户阅读习惯推送内容,用得越久,今日头条就越懂你。这是大数据时代的产物,也是自媒体时代的产物。
言归正传,前几日读者来信:
Q&A
自习室君,我经常遇到excel 中有很多空行或者空列,而且怎么删都删不完,滚动条变得很小,很不方便。有木有简单的方法快速清除空行或空列的?
今天周末趁着阳光美眉、心情舒畅,自习君就具体来聊聊这方面的知识(以行为例)
1、如何快速插入很多空行
其实,快速插入空行的方法真的非常多,但绝对不是“鼠标右击——插入”的N次重复操作。
若要求插入的空行是连续的,只需要掌握两个小技巧,就可以轻易解决此类问题:
①先选中N行,再“鼠标右击——插入”,就可以一次性插入N行
②史上最牛的快捷键“F4”,重复上一个操作。如果你想插入5N行,只需要再按4下F4就搞定了。当然你也可以一直按住F4不动,直到你满意为止。
若要求间隔插入空行,我们在《制作Excel表头真麻烦,教你6招破解方法》一文中也涉及到了,这里需要用到一个经典的操作技巧,让我们一起来看GIF动画吧!
2、如何快速删除很多空行
若空行是连续的,那就非常简单,直接选中空行删除就可以,结合F4的使用,操作更便捷。
但如果空行不是连续的,如何是好?这里可以提供两种办法:
①先对列排序(升序),这样所有的空行就会排在最前面,再选中删除即可。但现实工作中,排序容易打乱数据顺序,再者,如果存在合并单元格的情况,或许根本就无法排序。
②现隆重推荐excel又一个神技能“条件定位”,通常按F5或Ctrl+G可以快捷调出界面。
根据空值定位后,再选择“整行”删除即可,这个方法不是更加有技术含量呢
其实,我们可快捷删除“有效表格”后面所有的行(通常几万行),具体操作是:先选中“有效表格”后的一行,再快捷键组合“Ctrl+Shift+↓”,即可选中该行至最后的所有单元格,再删除。
3、隐藏“空值”单元格所在的行
通常,我们不需要删除存在“空值”的行,只需要隐藏即可。也只需要2个步骤
①依然用条件定位选取所有的空值。既选取需要筛选的列,F5打开定位窗口——定位条件——空值。
②按Ctrl+9即可隐藏空值所在的行(Ctrl+0是隐藏空值所在的列)
4、填充所有的空格
如下表,要求所有的“空值”单元格中填入0
首先,当然还是请出大神“F5”,定位出空值的单元格。
其次,再直接输入0,按Ctrl+Enter即可。Ctrl+Enter的功能就是在多个选中单元格里输入信息。
今天的分享就到此为止,主要是分享了“条件定位”的应用。
留一个思考题,下图是如何实现的(千万不要用最原始的办法,因为我假设首列有10000行)。
-
Java的excel去除空行(包括带有格式的空行)
2020-10-30 11:30:29数据:excel一共1004条数据:包含1行表头+1000有效数据+1个空白行+2行带有格式的空白行 目的:将excel表中的1000条有效数据批量导入(做出限制最多只能批量导入1000行) //获得第一个表单 Sheet sheet = wb.... -
excel中有时候表格下面有很多空行,下拉条滚动一点就过了很多行,怎么取消掉多余的行啊?(excel表头每页都...
2021-06-30 02:56:49问个excel 的问题,表格下面有太...二、然后按下Ctrl Shift 下方向键选中从第一个空行至最后包含字符的行的区域,按下Del键删除这一区域内的内容。三、点击一下“保存”按钮,或是Ctrl S保存一下。四、保存按钮按下... -
电脑EXCEL表格一次删除所有空行的两种方法
2021-07-28 02:21:07EXCEL表格有助你快速提升工作效率,职场办公人员电脑必备的,在电脑中打开EXCEL表格排版数据,发现有非常多的空行,很影响查看,如果一行一行删除非常浪费时间,那么如何一次删除所有的空行?接下去小编来告诉大家... -
怎样在EXCEL里删除多余的空行?
2020-03-03 20:06:10怎样在EXCEL里删除多余的空行? 1、通过刷选的方式删除 2、选中空白表格点击CTR+G -
Excel快速删除空行的绿色工具(可指定列)
2019-06-13 14:11:24不熟悉Excel的人怎么快速删除大量空白行?删除中间空白行, 使用这个在线工具:http://www.excelfb.com/,点击自动删除空白行 支持合并单元格处理 -
Excel中批量插入空行的技巧,会用2个算你厉害
2021-06-30 02:57:02Excel中插入空行,对于职场中的你来说可能再简单不过了,但隔行插入空行、隔几行插入几行,你知道吗?今天小编分享几个批量插入空行的技巧。一、隔一行插入一空行小编以前分享过的工资表生成工资条中,就用到了隔一... -
excel删除空行_Word如何转Excel?这样操作,数据清晰又直观!
2020-10-25 01:48:15但粘贴进 Excel 表格后,数据就成了介个样子,出现很多空行、重复的标题行、多个相同的部门数据等~ 看到这样的表格,大家的内心可能是这样的~ 如果我们想处理成下图这样规整的数据,应该如何操作呢? 那么,现在请... -
Excel如何快速批量删除空行
2021-05-05 04:29:30Excel快速批量删除空行方法如下:方法一:定位批量选择空行后删除这种方法最适合于数据区域中除空行外没有其他空单元格或只有单列数据的情况,如下图数据在A2:C100区域中。1.选择某列数据,如图中A2:A100区域。按F..... -
Excel表中莫名其妙多出的很多空列或空行怎么去除?
2022-06-20 00:55:13Excel表中有时会遇到莫名其妙多了很多空列或空行,使得我们浏览数据时很不方便。有没有方法可以快速去除呢?这里有个快捷方式,通过 "CTRL+SHIFT+方向键"处理。比如去除多余的列,定位到要去除的最左侧的列,左键... -
60万行的Excel数据,Python轻松处理
2020-11-25 10:49:52输出结果如下: 既然读取文件没有问题,进一步浏览整个文件发现存在多余的空行和重复的标题行在读取和转存中可以用正则匹配过滤掉这些行。 将读取的行数据转存到list中,以便进行排序。 将修改后的行数据list写入... -
Excel怎么删除表格最后的空行
2021-08-28 17:58:42今天跟大家分享一下Excel怎么删除表格最后的空行 1.打开Excel表格,如下图在表格数据的最后含有一些空行,现在我们想要将这些空行删除掉。 2.点击下图选项(Excel工具箱,百度即可了解详细下载安装... -
在PHPexcel中删除空行
2020-12-24 12:18:22我有以下代码.$sheet = $objPHPExcel->getSheet(0);$highestRow = $sheet->getHighestDataRow();$highestColumn = $sheet->getHighestDataColumn();for ($row = 2; $row <= $highestRow;... -
替换tab键并删除多余空格
2016-10-08 17:12:08用C语言写的一个小工具,用来删除文件中的多余空格(行尾空格)、文件末尾无用的空行、以及使用4个空格替换tab键。 目前支持的文件包括.c .h .s .txt .sct,内有操作说明。 -
Excel 批量删除空白行,你用了 2 小时,同事 3 分钟就搞定了
2021-06-17 17:41:10你好,我是悦创。 相信很多人平时在 Excel 中,删除单元格空白行时,都是手动选中一行,然后再点击...今天就来大家如何在 Excel 中,快速批量删除空白行,3 种方法任你选,下面就让我们一起来看看是如何操作的。 ... -
excel删除无尽空白行_excel如何批量删除空白行 巧用 ctrl+G 只需1秒 最常用的技巧...
2020-11-18 10:36:39工作中我们使用excel通常都会遇到这种情况,就是表格中有很多多余的空行。我们需要把多余的空行删除。 如果空行只有一两行的话,可以把鼠标放在空白行上,然后点击鼠标右键,在弹出的菜单中选择删除菜单。 在弹出的... -
excel删除空行
2018-04-12 11:16:00首先,选中你想开始删除的那堆空白行的首行,同时点键盘ctrl+shift+向下箭头,全选全部无用空格行; 第二,右键删除; 第三,删除后一定要点保存!然后关闭excel表格,重新打开。 done!第三步不做的话,excel又会... -
怎么批量删除 Word、Excel 以及文本文档中的空白行?
2022-03-24 09:43:19前面给大家介绍过使用「我的ABC软件工具箱」删除 Word、PDF、PPT 以及 Excel 文档中的空白页的功能,相信大家用过的都说好!今天给大家介绍的是使用「我的ABC软件工具箱」批量删除文档中的空白行。假如现在我有多个... -
关于POI删除空行的操作心得:poi方法removeRow()调用后,空行依然存在
2021-03-24 08:39:37接到一个需求需要将excel上多余的空行进行删除,保持数据的紧凑与严谨。 上网搜了一篇关于poi的删除空行技术说明文章,里面提到需要调用关键方法removeRow()。满心欢喜的我马上拿来使用,但是在我使用后的结果... -
excel如何删除空白行_Excel小技巧之快速调整列宽行高和删除空白行
2020-11-18 11:26:53Excel是我们在日常办公中不可或缺的表格制作利器。无论多么复杂的表格制作,在Excel眼中都是浮云,大部分人都会使用Excel制作简单的表格或者计算。厉害一点的朋友还可以使用函数来...一、Excel中,快速删除多余空... -
Excel如何删除空白行
2021-03-13 09:02:00前段时间需要画图,但是中间有很多空白...如何删除中间的空白行呢? 1)选中待处理的数据 2)工具栏–》“查找与选择” --》“定位条件” 3)空白处会被选中,右键删除空白行即可。结果如下(空白行均被删除): ... -
python去除空行
2020-11-24 04:42:34foryouslg#python3.51、对特定文件内容进行去重操作(行与行之间的重复)2、请输入需要去重文件的绝对路径3、删除文件中的空行4、去除字符串前后空行5、生成一个以当前日期命名的文件 import time year = time.... -
2021.2.23 python openpyxl excel 删除行
2021-02-23 17:43:06import openpyxl #导入库 wb = openpyxl.load_workbook(filename=“D:\迅雷下载\行列测试1.xlsx...正序的是话就是 先删除 1 水果 2元 这一行 删除过后 2 蔬菜 4元 这一行会变成 1 蔬菜 4元 for 循环就直接跳过了1 蔬菜 -
excel 删除大量空白行
2021-05-08 14:45:26问题描述:有些用户在创建excel表格的时候,容易将整个表格的所有行全部100多万行全部创建。 这会导致两个问题: 1,在数据量不是太多的时候,左边的滚动条轻轻拉动就跳很远的距离。无法实现滚动效果。 2,表格中... -
VBA删除WORD中所有的空行
2011-01-27 16:50:23Sub DelBlank() Dim i As Paragraph, n As Integer ... MsgBox "共删除空白段落" & n & "个" Application.ScreenUpdating = True End Sub 转载于:https://blog.51cto.com/billtym/486735 -
excel表格去除右边多余空白的列或行
2020-01-03 16:35:26首先选中空行的第一个按ctrl+shift+向右键就可以选中一行全部,不要松,再按向下键就可以选中全部了,然后鼠标右键,选择删除,然后保存就可以了。 不行的话 请查看是否有和有内容的单元格格式不一样的 选中该行...