C#およびXMLスプレッドシート簡単な質問
-
10-10-2019 - |
質問
こんにちはみんな私は1675ラインコードを持っています。 [ユーザー]ボタンTextbox.TextをクリックしたときにこのXMLスプレッドシートに挿入してから、デスクトップで作成します。それは可能ですか?現在のXMLスプレッドシート行にテキストを挿入するにはどうすればよいですか?
例えば:
` <Cell ss:StyleID="s38"/>
<Cell ss:StyleID="s39">
<Data ss:Type="String">ვაშლიჯვარი</Data>
</Cell>
<Cell ss:StyleID="s36"/>`
私を助けたり、私にとって非常に重要なことをアドバイスしたり、良いチュートリアルを提供してください。
解決
LINQからXMLを使用してExcel XMLファイルを開くことができます。必要に応じてXML DOMを変更できます。 ExcelワークシートのセルをXML要素と相関させる必要があります。その後、変更されたXML DOMを保存して、新しい変更されたExcel XMLファイルを作成できます。
ここにあなたを動かすための小さな例があります:
var xDocument = XDocument.Load("EL-Zednadebi.xml");
// XML elements are in the "ss" namespace.
XNamespace ss = "urn:schemas-microsoft-com:office:spreadsheet";
var rows = xDocument.Root.Element(ss + "Worksheet")
.Element(ss + "Table").Elements(ss + "Row");
// Row 12.
var row = rows.ElementAt(11);
var cells = row.Elements(ss + "Cell");
// Column U.
var cell = cells.ElementAt(20);
var data = cell.Element(ss + "Data");
// Replace the text in the cell.
data.Value = "Martin Liversage";
xDocument.Save("EL-Zednadebi-2.xml");
このコードは、次の簡素化されたXMLを想定しています。
<Workbook>
...
<Worksheet>
<Table>
...
<Row> <-- Row at index 11
...
<Cell> <-- Column at index 20
<Data>ვაშლიჯვარი</Data>
<Cell>
...
</Row>
...
</Table>
...
</Worksheet>
...
</Workbook>
所属していません StackOverflow