web-dev-qa-db-ja.com

WordでExcelセルを参照する

Word文書でExcelセルを直接参照するためのパッケージ済みのソリューションを知っている人はいますか?

例えば、

                                                         {[TestExcel]Tab1!A1} 

{[TestExcel] Tab1!A2}様、

私たちのシステムは、あなたのアカウント{TestExcel] Tab1!AccountNumber}が期限切れであることを警告しています。 {TestExcel] Tab1!PaymentDue}の支払いをすぐに送金してください。

この例では、仮想の{}構文を使用しています。ここで、内容は標準のExcel式です。

私が見たすべてのソリューションは、これを実現するためにカスタムVBAを使用しています。技術者以外のユーザーがこのタスクを実行できるようにする、優れたサードパーティソフトウェアが利用可能である必要があるという非常に一般的なニーズのようです。

上記の例に示されているように、名前付き範囲と標準セル参照の両方をサポートする必要があります。

7
MgSam

はい。

手順1:Excelセルをコピーします。

ステップ2:参照を貼り付けるWord文書に移動します。

ステップ3:右クリック

手順4:貼り付けオプションで、[ソース書式とリンク]または[書式をリンクしてマージ]を選択します。

16
Green Demon

@Green Demonの方法を試しましたが、リストされている2つの貼り付けオプションが表示されませんでした(Office2013)。ソースフォーマットの保持、マージフォーマット、テキストのみの保持しかありませんでした。しかし、私はあちこち見て、リボンに隠されていたペーストスペシャルを見つけました

手順は次のとおりです。

  1. Excelの範囲をコピーします。
  2. Word文書に移動し、をクリックしてExcelの範囲を貼り付けます。
  3. 以下に示すように、リボンから[形式を選択して貼り付け]をクリックするか、次のように入力します Ctrl+Alt+V

Location of Paste Special on the Word 2013 Ribbon

  1. [リンクを貼り付け]ラジオボタンをクリックします。
  2. MicrosoftExcelワークシートオブジェクトをクリックします。 [形式を選択して貼り付け]ダイアログボックスは次のようになります。

Paste Special Dialog Box

  1. [OK]をクリックします。

これで範囲がドキュメントに貼り付けられ、Wordドキュメントを保存して閉じてから再度開くと、「リンクされたファイルのデータでこのドキュメントを更新する」かどうかを確認するメッセージが表示されます。 ExcelからExcelへのリンクを行っている場合と同じように機能します。

この機能は素晴らしいです、そして私は今日それを見つけてとてもうれしいです。ただし、これを使用した私の短い経験では、これらのWordからExcelへのリンクがあると、更新についてのプロンプトが表示される前であっても、Word文書を開くのにかかる時間が劇的に長くなります。その後、Excelリンクを更新する動作は、ExcelからExcelへの同じリンクを実行する場合よりもはるかに時間がかかります。私の仕事はすべてネットワーク共有ファイルで行われているので、YMMVです。

2
Will Ediger

alt+h+v+l も動作します。大きなドキュメントを作成している場合、リボンをクリックするたびに、しばらくすると殺人になります。

1
user7472636

Willのソリューションは確かにCellオブジェクトからリンクしていますが、コンテンツは画像として挿入されています。

同じダイアログで、代わりに[フォーマットされていないUnicodeテキスト]を選択すると、セルのコンテンツのみがリンクおよび挿入されます。これは、テキストにカスタムフォーマットを適用する場合に適しています。

残念ながら、このアクションは単一のセルに対してのみ機能します。複数のセルをコピーすると、個々のセルの内容がタブまたは行スキップで区切られたテキストブロックになり、ブロック全体がリンクされて全体と見なされます。解決策は、この方法を使用して個々のセルをリンクすることです。

すべてのセルについてダイアログを呼び出す必要があるため、Excelからテーブルの大部分をリンクする場合、これは面倒になる可能性があります。ホットキーを使用して高速化できますが、シーケンスは面倒になります。

althvs、その後 alt+l、 tab、 、 そして最後に Enter

明らかに、これは多数のセルでは実用的ではありません。 AutoHotkeyスクリプトは役に立ちますが、VBAスクリプトを使用するのと同じように、サードパーティの移植ソリューションです。

1
Blkbox