• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:■ エクセルのマクロで出来ますか?)

エクセルマクロでA列にチェックボックスを配置し、チェックを入れた行のNo.を別のシートにコピーする方法はありますか?

このQ&Aのポイント
  • エクセルマクロを使用して、A列にチェックボックスを配置し、チェックを入れた行のNo.を別のシートにコピーする方法を探しています。
  • 現在、業務で特定の表を作成しており、請求書の発行を行っています。A列のNo.を入力すると、VLOOKUP関数を使用して必要な項目が請求書の雛形に表示される仕組みです。しかし、複数の行を抽出する場合は手動でNo.を入力しています。したがって、A列にチェックボックスを配置し、チェックを入れた行のNo.を自動的に別のシートにコピーするマクロが欲しいです。
  • 説明が分かりにくいかもしれませんが、エクセルマクロを使用してA列にチェックボックスを配置し、チェックを入れた行のNo.を別のシートに自動的にコピーする方法があれば教えてください。

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

  • ベストアンサー
  • n_na_tto
  • ベストアンサー率70% (75/107)
回答No.1

マクロを使わない方法です。 1.Sheet1で挿入したA列に[フォーム]から チェックボックスを挿入 例えばA2に挿入したら そのチェックボックスの上でマウス右クリック →コントロールの書式設定 →リンクするセル $A$2 (またはA2クリック) 以下、A3から下も同じ ______A__B___C___D___E____F_ _1_チェック_No._項目1_項目2_項目3_抽出数_ _2_レ_____1__値1__値2__値3____1_ _3_□_____2__値4__値5__値6_____ _4_□_____3__値7__値8__値9_____ _5_□_____4__値10__値11__値12_____ _6_レ_____5__値13__値14__値15____2_ _7_□_____6__値16__値17__値18_____ _8_レ_____7__値19__値20__値21____3_ 2. Sheet1右のあいている列[上の例ではF列]に抽出数 F2 =IF(A2,COUNT(F$1:F1)+1,"") 下方向・↓ 3. Sheet2 ___A___B___C___D_ 1_No._項目1_項目2_項目3_ 2__1__値1__値2__値3_ 3__5__値13__値14__値15_ 4__7__値19__値20__値21_ A2 =IF(ROW(1:1)>COUNT(Sheet1!F:F),"",INDEX(Sheet1!B:B,MATCH(ROW(1:1),Sheet1!F:F,0))) 下方向・↓ B2 =IF($A2="","",INDEX(Sheet1!C:C,MATCH($A2,Sheet1!$B:$B,0))) 右方向・→下方向・↓

untold
質問者

お礼

本日出張から戻り、早速教えていただいた方法を試したところ、大成功です! 本当にありがとうございました。 また、ご連絡及びお礼が遅くなり申し訳ありませんでした。

untold
質問者

補足

早々にご回答をいただきありがとうございました。 現在出張中につき、教えていただきました方法を試すことが出来ない環境にあります。 試した結果をまたご報告させていただきます。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.3

こんばんわ 請求書との事ですが マクロで処理するのであれば 項目に、名前(会社名などの請求先)、日付(取引した日付)があると思うのですが 名前で抽出し、さらに日付(請求月:2月1日から2月28日など期間で)抽出 それを日付で並び替えたものを「sheet2」へ出力すれば、チェックは不要ではと思います マクロの作成も出力の部分以外は、マクロの記録で得られるコードの 一部変更だけで、できると思います 意図に反していましたら、放置してください

untold
質問者

補足

ご回答をいただきありがとうございました。 請求書は毎月1日に1月分を纏めて発行しています。 sheetには取引日付順でデータを入力しており(上が若い日付)、 同一請求先が隔行になっている場合(1行目,5行目,12行目など)や 請求先(顧客数)が多いこともあり、 色々と考えた結果、質問内容の方法が現システムでは効率が良いと判断し、 質問させていただきました。

すると、全ての回答が全文表示されます。
  • rukuku
  • ベストアンサー率42% (401/933)
回答No.2

はじめまして >A列の左に行を挿入、各行にチェックボックスを配置し 「チェックボックス」というと少々面倒ですが、A列の左に列を挿入して「p」印をつけた行だけをひな形にコピーして印刷する、というのはマクロの得意技です。 (pはprintの頭文字を取っただけなので別の文字でもOKです。ただし、特定の1字にしておかないとプログラムが面倒になります。) このサイトで、詳細を事細かに説明するのは難しいので、まずはuntoldさんがどれくらいマクロを使えるのかを教えてください。

untold
質問者

補足

遅くなり申し訳ございません。ご回答をいただき、ありがとうございました。 私のマクロに関するスキルですが、内容を見て理解できる程のレベルではありません。 ネットで自分の作成したいマクロ(またはVBA)に近いものを探し出し、 記述内容を編集して動かすことが出来る程度です。

すると、全ての回答が全文表示されます。

専門家に質問してみよう