相关疑难解决方法(0)

使用Open XML从C#中的Excel到DataTable

我正在使用Visual Studio 2008,我需要DataTable使用Open XML SDK 2.0从Excel工作表创建一个.我需要使用带有工作表第一行的DataTable列创建它,并使用其余值完成它.

有没有人有一个示例代码或链接可以帮助我这样做?

c# openxml import-from-excel openxml-sdk

38
推荐指数
3
解决办法
6万
查看次数

如何设置单元格的背景?

如何在OpenXml中设置一行(或整行)中几个单元格的背景?

阅读了几篇文章:

  1. 使用C#中的openXML在excel表中着色单元格
  2. Excel Open XML中的高级样式

我仍然无法使它工作.

我的任务实际上乍一看似乎有点容易,与这些文章中的内容略有不同.上述教程主要展示了如何创建新文档并对其进行样式化.虽然我需要改变现有的样式.

也就是说,我有一个现有的xlsx文档(报告模板).我使用必要的值填充报告(由于SO open xml excel读取单元格值MSDN使用工作表(Open XML SDK)而设法执行此操作).但接下来我需要用红色背景标记几行.

我不确定是否要使用,CellStyle或者是否应该使用CellFormat或其他东西......这就是我现在所做的:

SpreadsheetDocument doc = SpreadsheetDocument.Open("ole.xlsx", true);

Sheet sheet = (Sheet)doc.WorkbookPart
                        .Workbook
                        .Sheets
                        .FirstOrDefault();

WorksheetPart worksheetPart = (WorksheetPart)doc.WorkbookPart
                                                .GetPartById(sheet.Id);
Worksheet worksheet = worksheetPart.Worksheet;


CellStyle cs = new CellStyle();
cs.Name = StringValue.FromString("Normal");
cs.FormatId = 0;
cs.BuiltinId = 0;
//where are the style values?

WorkbookStylesPart wbsp = doc.WorkbookPart
                                .GetPartsOfType<WorkbookStylesPart>()
                                .FirstOrDefault();
wbsp.Stylesheet.CellStyles.Append(cs);
wbsp.Stylesheet.Save();



Cell cell = GetCell(worksheet, "A", 20);
cell.StyleIndex …
Run Code Online (Sandbox Code Playgroud)

c# excel openxml

8
推荐指数
1
解决办法
2万
查看次数

带有xml的Excel - >标签和属性的源和指南

Excel可以直接打开.xml文件并将它们渲染为漂亮的Excel文件.

可以在此处找到一个示例:http://en.wikipedia.org/wiki/Microsoft_Office_XML_formats#Excel_XML_Spreadsheet_example

我试图找到一个关于标签和属性的源,使用和一般结构,但我找不到任何.

我对这一切都很陌生.我甚至不知道从哪里开始.

任何帮助表示赞赏.

问候.

xml excel openxml

6
推荐指数
2
解决办法
3706
查看次数

使用 OpenXML 读取 Excel 文件

我正在编写 c# 程序来使用 OpenXML 读取 excel 文件。我在 Excel 文件的一列中添加了一个单词列表。我想读取它们并添加到数组列表中。我正在使用下面的代码

using (SpreadsheetDocument doc = SpreadsheetDocument.Open(filePatah + "\\" + fileName, false))
 {
       WorkbookPart workbookPart = doc.WorkbookPart;
       WorksheetPart worksheetPart = workbookPart.WorksheetParts.First();
       SheetData sheetData = worksheetPart.Worksheet.Elements<SheetData>().First();

       ArrayList data = new ArrayList();
       foreach (Row r in sheetData.Elements<Row>())
       {
          foreach (Cell c in r.Elements<Cell>())
          {
             data.Add(c.CellValue.Text);
          }
       }
 }
Run Code Online (Sandbox Code Playgroud)

当我期待列出这些单词时,我看到的是 1,2,3,4 等。我需要做什么才能得到这些词?

c# excel openxml

4
推荐指数
1
解决办法
1万
查看次数

使用OpenXML读取Excel文件

我试图通过OpenXML读取Excel文件并寻找输出到CSV.目前,它在一个单独的行(由于写信)或单行(当使用写入时)读取每个单元格.以Excel格式表格格式读取和输出的最佳方法是什么?OpenXML中是否有内置功能,我可以利用它?

static void Main(string[] args)
{
        String xlDocName = @"C:\Users\xlp111\source.xlsx";

        using (SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Open(xlDocName, false))
        {
            WorkbookPart workbookPart = spreadsheetDocument.WorkbookPart;
            string cellValue = string.Empty;
            foreach(WorksheetPart worksheetPart in workbookPart.WorksheetParts)
            {
                OpenXmlReader reader = OpenXmlReader.Create(worksheetPart);

                while (reader.Read())
                {
                if (reader.ElementType == typeof(Row))
                {
                    reader.ReadFirstChild();

                    do
                    {
                    if (reader.ElementType == typeof(Cell))
                    {
                        Cell c = (Cell)reader.LoadCurrentElement();

                        if (c.DataType != null && c.DataType == CellValues.SharedString)
                        {
                        SharedStringItem ssi = workbookPart.SharedStringTablePart.SharedStringTable.Elements<SharedStringItem>().ElementAt(int.Parse(c.CellValue.InnerText));
                        cellValue = ssi.Text.Text;
                        Console.WriteLine(cellValue);
                        }
                    }
                    }                      
                    while (reader.ReadNextSibling());
                }
                }
            }
            Console.ReadLine(); …
Run Code Online (Sandbox Code Playgroud)

c# excel openxml-sdk

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

c# ×4

excel ×4

openxml ×4

openxml-sdk ×2

import-from-excel ×1

xml ×1