Excel:XLSXファイル内のXMLを編集します


11

Excel XLSXファイルは、いくつかのXMLファイルを含むzipアーカイブです。すべてのXMLファイルを抽出xl\connections.xml し、XMLエディターを使用して編集してみました。それは、別のサーバーを指すように20以上の接続を変更する必要があるためです。

編集したアーカイブをExcelで開くと、変更が拒否され、ファイルが修復されます。

XMLアーカイブ内のXMLファイルを編集する方法はありますか?

回答:


10

編集はどうしますか?ファイルを完全に抽出するのではなく、7-zipでアーカイブを開くことをお勧めします。次に、編集するファイルを見つけ、「編集」を選択して保存すると、アーカイブ内の7-zipが自動的に置き換えます。過去にこれを行ったとき、Excelは問題なく開いていましたが、実際に展開してから再圧縮すると問題が発生しました。


3
Excelの「zip」ファイルの内容は実際には圧縮(収縮)されておらず、代わりに格納されています。
ホワイトクォーク、2014年

ああ、それはなぜWindowsの組み込みジッパーを使用してzipとして再圧縮することが問題を引き起こすのかを説明するでしょう。7-zipを使用し、圧縮レベルを「ストア」として指定すると機能するかどうか、今は気になります。
nhinkle

1
@whitequark:不正解です-内容は実際に収縮しています!Excelは、コンテンツのみが保存されている「zip」ファイルも読み取りますが、同じファイルをExcelで再度保存すると、とにかく圧縮されます。@nhinkle:圧縮レベルとして「store」または「normal-deflate」を選択したかどうかに関係なく、7-zipでの圧縮は常に機能しました。
Turismo

@Turismo:たぶん、odfなどでそれを逃した。これらのXMLを圧縮することは、本当に良い考えです。Windowsのジッパーはおそらく脳に損傷を受けています。
ホワイトクォーク

@whitequark Windows内蔵のジッパーで圧縮してみましたが、Excelは問題なく開くことができます。最も一般的な間違いは、フォルダを右クリックして圧縮することですが、これは正しくありません。[Content_Types].xmlはooxmlファイルのルートにある必要があるため、フォルダー内のすべてのファイルを選択して圧縮する必要があります
phuclv

2

アーカイブ内のXMLを問題なく編集できるはずです。私はそのxl\comments1.xmlファイルで何度かそれを行い、Excelは問題なくそれを開きました。

7-zipとNotepad ++を使用しました。おそらく、エディターがXMLのエンコードを変更するか、ジッパーがExcelと完全に互換性のないファイルを作成します。

おそらく、変更する必要があるアーカイブ内の別のファイルへの依存関係もあるでしょう。
Excel内で接続を変更し、保存後にアーカイブ内のどのファイルが変更されたかを確認してみてください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.