• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:数値の自動コピーができるプログラムについて)

数値の自動コピーができるプログラムについて

このQ&Aのポイント
  • HLOOKUP関数では入力されていないデータには0が返されてしまうため、マクロやVBAを使用したプログラムが必要。
  • エクセルデータの左側のシート11,12,13において、先頭行の数字をA1セルに入力すると、同じ列の数字が列Aに自動的にコピーされる。
  • 画像左側のシート11,12,13それぞれに適用できるプログラムが望ましい。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

関数の方がはるかに便利ですが、まぁマクロのご相談なので。 手順: シート11のシート名タブを右クリック、コードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub worksheet_change(byval Target as excel.range)  dim c as range  if target.count > 1 then exit sub  if target.row > 1 then exit sub  if target = "" then exit sub  set c = worksheets("読めない先頭シートの名前").range("1:1").find(what:=target.value, lookin:=xlvalues, lookat:=xlwhole)  if not c is nothing then   c.entirecolumn.copy target  else   msgbox "NOT FOUND"   target.select  end if end sub 他の12,13シートにも同様にマクロを付ける。

jugyou1
質問者

お礼

ありがとうございました。関数でもできるのでしょうか? よろしければ関数での方法もアドバイス頂けますとありがたいです。何度も申し訳ありませんがよろしくお願いします。

その他の回答 (1)

回答No.2

参照先が空白の場合に空白が表示されるようにするなら =IF(ISNA(HLOOKUP(?)),"",HLOOKUP(?)) とすればよいのではないですか.

jugyou1
質問者

お礼

ありがとうございました。試してみましたがマクロの方がいい結果が出たようです。

関連するQ&A