我想检查使用c#
的excel工作表是否合并了我搜索过的单元格,并找到了许多讨论如何合并或未合并单元格的方法,或检查是否有像{{1}这样的工作表修复范围内的单元格我真正想要的是
检查所有工作表中是否有合并的单元格以及所有excel文件中的所有单元格,或者至少是我工作的工作表
感谢先进的帮助
答案 0 :(得分:1)
您可能对使用以下方法感兴趣
Function CountMerged(pWorkRng As Range) As Long
'Updateby20140307
Dim rng As Range
Dim total As Long
Set dt = CreateObject("Scripting.Dictionary")
For Each rng In pWorkRng
If rng.MergeCells Then
TempAddress = rng.MergeArea.Address
dt(TempAddress) = ""
End If
Next
CountMerged = dt.Count
End Function
来源:https://www.extendoffice.com/documents/excel/1501-excel-count-merged-cells.html
希望这会对你有所帮助
答案 1 :(得分:0)
以下方法将有所帮助,它位于c#:
using Spire.Xls;
namespace Detect_Merged_Cells
{
class Program
{
static void Main(string[] args)
{
Workbook workbook = new Workbook();
workbook.LoadFromFile("Sample.xlsx");
Worksheet sheet = workbook.Worksheets[0];
CellRange[] range = sheet.MergedCells;
foreach (CellRange cell in range)
{
cell.UnMerge();
}
workbook.SaveToFile("Output.xlsx",ExcelVersion.Version2010);
}
}
}
以上解决方案基于第三方库 - Spire.XLS(您可以从nuget获取它并注意我为Spire工作)。有关更多信息,请查看此链接: https://www.e-iceblue.com/Tutorials/Spire.XLS/Spire.XLS-Program-Guide/Cells/How-to-detect-merged-cells-in-a-worksheet.html