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

エクセルの抽出に関するマクロ

このQ&Aのポイント
  • エクセルの抽出に関するマクロの使い方や注意点について解説します。
  • エクセルの「会員情報」シートから指定した条件でデータを抽出し、「抽出結果」シートにコピーする方法について詳しく説明します。
  • 「会員情報」シートのチェックボックスを使った抽出とその結果のコピーを行うマクロの作成手順を解説します。

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

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

今回ご質問の内容と、既に出来ている >「抽出条件」シートで指定した条件で抽出し、「抽出結果」シートにコピーする の部分との連携が不明なので、そこは応用して自作してください。 ご質問内容: >今は「会員情報」シートのチェックボックスを使った抽出とその結果のコピーができないところでストップしています たとえば sub macro1()  dim c  for each c in worksheets("シート名").checkboxes  c.topleftcell = c.value  next c  worksheets("シート名").range("R5:R588").autofilter field:=1, criteria1:=1  worksheets("シート名").range("A5:R588").copy destination:=worksheets("抽出結果").range("A1")  worksheets("シート名").autofiltermode = false  worksheets("抽出結果").checkboxes.delete end sub 言わずもがなですが、R列に配置した「フォームコントロールの」チェックボックスは、各セルの中にきちんと収めて配置しておかなければいけません。

nov1130
質問者

お礼

回答ありがとうございました。いろいろ試してみましたが、私の力では解決できず、他の方法をとることにしました。ご教授に感謝します。

nov1130
質問者

補足

素早い対応、本当に助かります。さっそくやってみました。 教えていただいたものを打ち込んでみましたがエラーがでました。「destination:」の「:」を取ったら動きました。 それでも思った結果(チェックボックスにチェックを入れた会員のデータのみ抽出)が現れません。 (1)「抽出結果」シートにはなんのデータも出ません。 (2)「会員情報」シートのチェックボックス欄のあるR列には、チェックのあるセルには「1」、チェックのないセルには「-4146」という数字が現れました。 【補足】 『「抽出条件」シートで指定した条件で抽出し、「抽出結果」シートにコピーするの部分との連携が不明』ということでしたので、以下に例を書き出します。 Sub 正会員の抽出() MsgBox "正会員を会員番号順に抽出します" Sheets("会員情報").Select Range("a5:r588").AdvancedFilter xlFilterCopy, Sheets("抽出条件").Range("d1:d2"), CopyToRange:=Worksheets("抽出結果").Range("b5:s5") Sheets("抽出結果").Select ActiveWindow.FreezePanes = False Range("a6").Select ActiveWindow.FreezePanes = True End Sub 「抽出結果」シートの上部にはボタンが配置してあるため、B5から下にデータがコピーされるようになっています。A列は、人数を数えるための数字がいれてあります。 「言わずもがなですが、R列に配置した「フォームコントロールの」チェックボックスは、各セルの中にきちんと収めて配置しておかなければいけません。」と書かれていますが、これもよく分かりません。(^_^; 配置にコツがあるのでしょうか?私は1ばん上のセルにチェックボックスを挿入し、あとはオートフィルでコピーしていきました。高さや幅、セル内の位置に指定がありますか? マクロを始めたばかりで、keithin様が書いてくださったプロシージャの意味が半分くらいしか分かりません。何がキモで何が不要なのかも分かりません。お助けください。

関連するQ&A