• ベストアンサー

Excelで

ブックのsheet1に住所録のようなものを行単位で入力します。1行目に斉藤という氏名、2行目に後藤という氏名等を入力し、sheet2のどこかのセルを(例えばA1)1箇所決めて、そこに関数などをいれて先ほどの斉藤というセルをクリックすると、そのsheet2のA1に自動的に斉藤がはいり、次に後藤をクリックすると今度は同じA1が後藤に代わる なんてことは出来ますか?差込印刷などではないようです。ちょっとわかりにくい説明で申し訳ありませんが、お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

仰っている内容を関数で実現するのは難しいかと思われます。 よろしければ、以下をSheet1のプロシージャに記述して、試してみて下さい。ちなみに、Sheet1の名前をクリックするときは「ダブルクリック」でお願いします。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cancel = True Worksheets("Sheet2").Range("A1").Value = Target.Value End Sub

shinseiki10
質問者

お礼

またまた、的確な回答有難うございます。 出来ました! これはマクロの初歩なのでしょうか? びっくりです。

その他の回答 (2)

  • shkwta
  • ベストアンサー率52% (966/1825)
回答No.2

Private Sub Worksheet_SelectionChange(ByVal Target As Range)   Sheet2.Range("A1") = Selection.Cells(1, 1) End Sub VBEでSheet1のモジュールにこれを書けばとりあえずできます。ただ、範囲以外のものを選択したときの処理を追加する必要があるかもしれません。

shinseiki10
質問者

お礼

有難うございます。出来ました。モジュールに記述(コピーアンドペーストですが)したのは、はじめて です。勉強になりました!これは、かなり高度なことでしょうか?一般人もこれぐらいは普通なんでしょうか?

  • marbin
  • ベストアンサー率27% (636/2290)
回答No.1

Private Sub Worksheet_SelectionChange(ByVal Target As Range) を使えば出来るかもしれません。

shinseiki10
質問者

お礼

有難うございます。が、意味が知識不足で?です。 すみません。VLOOKUPやIF関数や簡単なマクロ程度の知識しかありません。もう少し詳細を教えていただけると嬉しいです。

関連するQ&A