次の方法で共有

Excelの関数編集について

Anonymous
2025-02-25T01:57:43+00:00

Excelのブックで複数シートをグループ化して作業する場合に、他のファイルからコピーした関数を張り付けた場合に、関数の前にコピーしたファイル名が入ってしまうので、このファイル名だけを削除したいのですが?グループ化してもこの関数を同時に編集できません。何か方法はありませんか?

Microsoft 365 と Office | Excel | ビジネス向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

ひまじん 17,185 評価のポイント
2025-02-26T15:25:18+00:00

こんにちは。

私の返信に回答マークを付けてくださっていますが、問題解決済みということでよろしいでしょうか?。

念のため、書かれている疑問点についてお答えしておきたいと思います。

もし、もう解決済みで興味が無いということでしたら、以下、全て読み飛ばしていただいて構いません。

>置き換えるセルやシートは先に選択するのでしょうか?

いいえ、その必要はありません。

「置換」機能で「すべて置換」を行えば、グループ化したシートの全てのセルについて検索し、置換します。

>選択したセルの先頭しか編集できないのですが?

「置換」機能で「すべて置換」を行えば、グループ化したシートの全てのセルについて検索し、「検索する文字列」に一致する文字列があれば全て取り除きます。( [*] の中の * はワイルドカードとして機能します。)

数式の途中であっても、問題なく該当する「検索する文字列」のみ取り除くはずです。

手元の環境では、下記のような状況を作り動作確認しています。

<確認手順>

  1. Book1.xlsx と Book2.xlsx という名前の 2つのファイルを用意します。
  2. Book1.xlsx に図3のような 3つのシート( Sheet1、Sheet2、Sheet3 )を作成します。
    ・図3
    ※本題とは関係ありませんが、C列には左隣の B列のセルの数式を文字列として表示するための数式を入れています。( =FORMULATEXT(B2) など)

3. Book2.xlsx に図4のような 3つのシート( Sheet1、Sheet2、Sheet3 )を作成します。
・図4
4. Book1.xlsx を開き、Sheet1 を先頭にして 3つのシート全てをグループ化し、表示されているシート(先頭シート)の B2:B6 のセル範囲を選択して普通にコピー(右クリックからコピーを選択、など)を行います。

これにより、3つのシートの該当のセル範囲の内容が全てコピーされます。
この時、各セルの内容は数式であっても単なる値であっても良く、また、数式も同一であっても異なっていても全てコピーされます。 5. Book2.xlsx を開き、Sheet1 を先頭にして 3つのシート全てをグループ化し、表示されているシート(先頭シート)の B2セルを選択して普通に貼り付け(右クリックから貼り付けを選択、など)を行います。

これにより、Book1.xlsx でコピーした全てのセル内容が、Book2.xlsx の 3つのシート全ての B2:B6 のセル範囲に貼り付けられます。 6. ここまでの時点で、Book2.xlsx のシートの中のセルで他のシートを参照している数式については、その参照箇所に図5のように外部参照形式の文字列が加わってしまいます。
この際に、Book1.xlsx が閉じられていると、ファイル名に加えてフォルダパスも加わった文字列になります。
なので、ご紹介した「置換」手順の 1. が必要になります。

・図5
※画像として提示するため、各シートを個別にキャプチャしています。
※数式バーの表示内容と B列の各セルに表示されている値(数式の結果が元のファイルのシートのセル範囲を参照)や C列の内容をご覧いただければ、外部参照形式の文字列が加わってしまっているのがお分かりいただけるかと思います。
※本題とは関係ありませんが、C列には左隣の B列のセルの数式を文字列として表示するための数式を入れています。( =FORMULATEXT(B2) など)

7. ご紹介した「置換」手順の 1. から順に実行します。
結果は、図6のようになります。

・図6
※画像として提示するため、各シートを個別にキャプチャしています。
※数式バーの表示内容と B列の各セルに表示されている値(数式の結果がこのファイルのシートのセル範囲を参照)や C列の内容をご覧いただければ、外部参照形式の文字列が全て取り除かれているのがお分かりいただけるかと思います。
※本題とは関係ありませんが、C列には左隣の B列のセルの数式を文字列として表示するための数式を入れています。( =FORMULATEXT(B2) など)
https://learn-attachment.microsoft.com/api/attachments/2ad6913a-d769-48a8-b371-fc740020f20b?platform=QnA"https://learn-attachment.microsoft.com/api/attachments/7d7e9f07-3b27-4c65-adb0-d525046f33ca?platform=QnA" title="filestore.community.support.microsoft.com" rel="ugc nofollow">

ご覧のように、こちらの手元の環境では、数式の途中に入ってしまった外部参照部分の文字列であっても、グループ化した全てのシートの全ての該当するセル内の数式について取り除かれるのを確認しています。

もし、まだ未解決なのでしたら、もう一度、先にご紹介した「置換」手順をお試しになってみてください。

それでもうまくいかないようでしたら、どのようなシート構成で、各シート内にはどのような数式が入っていて、どのような文字列が数式内のどの部分に加えられてしまっているのか、といった詳細な情報を提示していただければ、私以外の方からも何かお役に立つ情報が集まるかもしれません。

もちろん、提示していただく際には個人情報(あるいは、公開できない情報など)に関わる部分は隠すなり書き換えるなりしていただかなければなりませんが、うまくいかない原因を突き止めるためには出来るだけ正確な情報が必要です。ご検討ください。

尚、既に疑問点についても解決済みでしたら、ここに書いていることはご放念ください。

ご参考まで。

この回答は役に立ちましたか?

1 人がこの回答が役に立ったと思いました。
0 件のコメント コメントはありません

質問作成者が受け入れた回答

ひまじん 17,185 評価のポイント
2025-02-25T10:57:38+00:00

こんにちは。

お困りの状況の確認ですが、

『コピー元のファイル(例えば、ファイル名 xxxxx.xlsx など)で、グループ化したシートの特定のセルの内容を普通にコピーし(クリップボード経由になるので、数式や書式を含めて該当のセル内容の全てがコピーされる)、同様の数のシートをグループ化したファイルの特定のセルにそのまま貼り付けた場合、その貼り付けられたセルの中に他のシートを参照している数式(例えば、=Sheet1!A1 など)があると、その数式のみ、元のファイルを参照する部分が付加された外部参照式(例えば、='元のファイルのパス[xxxxx.xlsx]Sheet1'!A1 など)になってしまう。』

といったことでしょうか?。

その場合ですが、シートをグループ化したままで、特定のシートのセルの外部参照部分(例えば、元のファイルのパス[xxxxx.xlsx] など)のみを取り除く方法としては、「置換」機能を使うのが一番簡単な方法かと思います。

<「置換」手順>

  1. コピー元のファイルとコピー先のファイルの両方を必ず開いておく。
    これにより、外部参照式から元のファイルのフォルダパス部分が取り除かれ、置換が行いやすくなります。
    例えば、
    ='元のファイルのパス[xxxxx.xlsx]Sheet1'!A1

    =[xxxxx.xlsx]Sheet1!A1
    のように自動的に変更されます。
  2. 「ホーム」タブの中の「検索と選択」を選び、表示されるメニューの中から「置換」をクリック。
  3. 図1の「検索と置換」が表示されるので、図の通りに設定し、「すべて置換」をクリック。
    ※図1より設定項目が少なく表示される場合は、「オプション」をクリックすると全て表示されます。
    ※「検索する文字列」には、[*] というように入力してください。
    ※「置換後の文字列」には、何も入力しないでください。

・図1

[![画像](https://learn-attachment.microsoft.com/api/attachments/10139470-f351-4e78-b42e-4803addefe93?platform=QnA"4">
  • 図2のように、何件置換されたか表示されるので「OK」で閉じ、「検索と置換」も「閉じる」で閉じる。
    この時点で、開いておいた元のファイルも閉じてしまっても構いません。
  • ・図2
    画像

    これで、グループ化したシート内の該当セルの外部参照部分が一気に全て取り除かれます。

    もしも、一つずつ確認しながら置換したい場合には、手順の 3. で「すべて置換」ではなく「すべて検索」を選ぶことで、該当シートの置換すべきセルに選択枠が移動しますので、置換したい場合には「置換」を選び(置換後には次の置換候補のセルに選択枠が自動的に移動)、置換したくない場合には「次を検索」を選ぶ、という操作を繰り返してください。

    尚、一つずつ確認しながら置換する際に、置換すべきセルのあるシートが複数に渡る場合は、手順の 3. の図1で「検索場所」を「ブック」にしておくと確実に置換できます。

    シートをグループ化するときのシートの選択順を工夫すれば「検索場所」は「シート」のままでも良いようですが、ややこしい話になるのでこの辺の説明は省略します。悪しからずご了解のほど。

    Windows11 と Microsoft365 の Excel の組み合わせで動作確認しています。

    ご参考になれば幸いです。

    <文章全体を見やすくするための編集>2025/2/25 22:50

    一部分を太字にし、一部分に改行を追加しました。

    文章中の脱字している部分を追記しました。

    ※全体の文意そのものは変わりません。

    <追記>2025/2/26 0:05

    最後のほうの文章に、「尚、一つずつ確認しながら置換する際に、・・・」の部分を追記しました。念のため。

    この回答は役に立ちましたか?

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません

    12 件の追加の回答

    並べ替え方法: 最も役に立つ
    1. Anonymous
      2025-02-25T12:32:52+00:00

      ご連絡ありがとうございます。

      置き換えですね、早速明日やってみます。

      ありがとうございました。

      この回答は役に立ちましたか?

      0 件のコメント コメントはありません
    2. Anonymous
      2025-02-25T12:28:09+00:00

      ご連絡ありがとうございます。

      環境のせいですかね?職場のパソコンですので、Windows10でOfficeは?

      別な環境でもやってみますね。

      グループ化しても先頭のシートのみの編集になってしまいます。

      この回答は役に立ちましたか?

      0 件のコメント コメントはありません
    3. motosan 3,230 評価のポイント
      2025-02-25T04:57:16+00:00

      あきRS さま

      私の環境では得に問題なくシートをグループ化したままで数式の編集ができます。

      Windows11(24H2)

      Office2019

      シートをグループ化して他のブックから数式を張り付けた状態です。

      数式の編集中です。

      Sheet1 ~ Sheet3 のD1の数式はすべて同じに編集されます。

      あきRS さんの環境ではなぜ編集できないのかわかりません。

      数式をメモ帳に張り付けて文字列にしてからセルに張り付ければ、できると思いますが不便ですね?

      手順が違うのでしょうかね?

      この回答は役に立ちましたか?

      0 件のコメント コメントはありません