zzz123 发表于 2023-3-9 18:47:33

spread读取excel只读取有数据的行


为什么这个方法读取excel会有100多万行。有没有办法只保留有数据的行数?
fs.OpenExcel(openFileDialog.FileName, FarPoint.Excel.ExcelOpenFlags.DataOnly),

zzz123 发表于 2023-3-9 18:47:34



用这个方法可以了
For sheetIndex = 0 To fs.Sheets.Count - 1
                fs.Sheets(sheetIndex).RowCount = fs.Sheets(sheetIndex).GetLastNonEmptyRow(FarPoint.Win.Spread.NonEmptyItemFlag.Data)+1
                fs.Sheets(sheetIndex).ColumnCount = fs.Sheets(sheetIndex).GetLastNonEmptyColumn(FarPoint.Win.Spread.NonEmptyItemFlag.Data)+1
            Next

Richard.Ma 发表于 2023-3-10 09:25:49

本帖最后由 Richard.Ma 于 2023-3-10 09:27 编辑

你可以在打开文件后再用下面的代码设置行列数

var sheet1 = fpSpread1.AsWorkbook().ActiveSheet;
var usedRange = sheet1.UsedRange;
int usedRowCount = usedRange.RowCount, usedColumnCount = usedRange.ColumnCount;
sheet1.RowCount = usedRowCount;
sheet1.ColumnCount = usedColumnCount;

zzz123 发表于 2023-3-10 09:42:34

导入后spread的格式就变了,有没有办法保留之前的格式呢?

Richard.Ma 发表于 2023-3-10 10:56:47

这个是因为你在代码中添加了这个flag,不要添加就行


zzz123 发表于 2023-3-10 17:53:33

没有这个属性呀

Richard.Ma 发表于 2023-3-11 14:04:02

嗯,这个也没有问题
页: [1]
查看完整版本: spread读取excel只读取有数据的行