ベストアンサー フィルタでデータを選択して、データが0件の場合印刷しない 2004/10/07 07:27 エクセルのシートで、フィルタでデータを選択して、データが0件の場合印刷しないマクロはどのような記述ですか みんなの回答 (2) 専門家の回答 質問者が選んだベストアンサー ベストアンサー imogasi ベストアンサー率27% (4737/17070) 2004/10/07 09:35 回答No.2 (例データ)A1:B7 値1 値2 as as df df1 gh ghs hj hj gh ghs op sss (条件)A10:B11 値1 値2 gh ghs (コード) Sub test01() Range(Cells(1, "A"), Cells(7, "B")).AdvancedFilter _ Action:=xlFilterCopy, _ CriteriaRange:=Range(Cells(10, "A"), Cells(11, "B")), _ CopyToRange:=Range(Cells(13, "A"), Cells(20, "B")), _ Unique:=False If Cells(14, "A") = "" And Cells(14, "B") = "" Then MsgBox "該当なし" Else MsgBox "該当あり" 'Range(Cells(10, "A"), Cells(20, "A")).PrintOut End If End Sub (結果)A13:B15に 値1 値2 gh ghs gh ghs 範囲指定は実際の場合、適当に修正してください。 結果、「該当あり・なしのサイン」や「件数を返す」と言うのはないようなので、答えがセットされるべきセルの値ををチェックするより他ないのではと言うのが結論です。 質問者 お礼 2004/10/08 06:40 ありがとうございます。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 その他の回答 (1) papayuka ベストアンサー率45% (1388/3066) 2004/10/07 08:19 回答No.1 フィルタ処理実行後に対象列を調べて、最終データ行=タイトル行なら実行しないとか、、、 例)1行目がタイトル行で、A列でオートフィルタを実行した場合 Sub test() '何らかのフィルタ処理 If Activesheet.Range("A65536").End(xlUp).Row = 1 Then Exit Sub MsgBox "OK" End Sub 質問者 お礼 2004/10/08 06:41 ありがとうございます。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ パソコン・スマートフォンソフトウェアオフィス系ソフト 関連するQ&A エクセルでデータがあるシートだけ印刷するマクロ エクセルのマクロで印刷するマクロを使っていますが、5つある ワークシートを全て選択して印刷するマクロでこれをデータ(数値)が 入っているワークシートだけ印刷するマクロにしたいのですがどのようにすればいいのでしょうか? Excelで表に任意データを入れたい いつもお世話になっています Excelで悩んでいるところがあるので、ご教授をお願いします。 ExcelにシートA,シートBを用意 シートAに表を作成しまして (例) | 名前 | 備考 | | ̄ ̄ ̄ ̄| ̄ ̄ ̄ ̄| | ̄ ̄ ̄ ̄| ̄ ̄ ̄ ̄| | ̄ ̄ ̄ ̄| ̄ ̄ ̄ ̄| | ̄ ̄ ̄ ̄| ̄ ̄ ̄ ̄| この表は1ページで30行分の名前データが綺麗に収まる表です。 別シートBに百数件の名前だけのデータが入っています。 (A列に数十件、B列に数十件とデータは複数列にわたって入っています) ※今はこのデータの形式ですが、データの持ち方はある程度妥協できます シートBの任意の名前データだけ複数選択し、シートAの形を使って印刷をしたいと考えています。 この時、選択したデータ件数によってはシートAの表は複数枚に渡って印刷される必要があります。 これを実現したいのですが、どのようにすればよいでしょうか? マクロでやるのか、はたまたマクロを使わずともできるのか・・・ 差し込み印刷のような感じでできないかと調べてはいるのですが、解決できそうな情報がみつかりません。 これを実現できる方法を分かる方がいましたら、お願いします。 マクロでという場合は、VBAの記述は初心者ですのでポイントだけでも詳しく教えて頂けると嬉しいです。 よろしくお願いします。 エクセルの数件のデータを表に印刷したい シート1の一行分のデータをシート2の表に表示されるように設定しています。 (=でシート1のセルを指定するとゆう超単純な物です) そのデータとゆうのは、何件もあるのですが、 今は、一件づつインプットして印刷、を繰り返して処理してます。 それを何件ものデータを一気に表に反映させて印刷する事は出来ますか? あと、その表とゆうのは、A5サイズですが、印刷用紙はA4なので、 出来れば、A4用紙に二件分、印刷したいのですが・・ 恐らく、マクロとかVBAなどといった物を駆使すれば出来るのでしょうが、 過去の質問等、かなり閲覧したものの、無知な私には何を書いてるのかさえも、 ほとんど分かりませんでした。。 別シート間のセルを=で指定出来る事も、今回初めて知ったぐらいです。 エクセルの知識は表計算など、超基本的な事しか分かりません。 何がアドバイスあれば、ご教授下さい。宜しくお願いします。 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? OKWAVE コラム エクセルのデータをまとめて印刷 一つのフォルダの中に複数のエクセルのデータがあります。さらにその一つ一つに複数のシートがあります。 このフォルダ下のエクセルデータ(全てのシート)を一括印刷したい場合どうすればいいのでしょうか? 色々調べたらそのフォルダのウィンドウの開いて、印刷したいエクセルのデータを選択して「ファイル」⇒「印刷」とすれば複数のエクセルデータを印刷できるのは分かっています。 けれど、このやり方だと全シートは無理ですよね? 何か良い方法を教えてください。 よろしくお願いします。 オートフィルタ後の印刷がおかしい おはようございます。ちょと困っていますので、どなたかご教授ください。 エクセルでオートフィルタを使い、印刷をかけようとしているのですが、印刷プレビュー時ですでに、なにかおかしいです。 100件ほどあるデータの中から、オートフィルタで3件ほど抽出しました。 抽出されたデータは、縦の番号から言うと1、99、100のデータだったのですが、印刷プレビューでみると、一枚目にタイトルと1の列。2枚目に99と100に列でプレビューされます。 実際印刷しても、2枚に分かれてしまっていました。 なんか、抽出されなかったデータが非表示というか、空白として印刷されている気がします。 1件目の下は3/4ほど空白が広がっていますし。 色々調べてはみたのですが、「条件で抽出して印刷するならオートフィルタ!」みたいな事がでてたりしますし、このような現象になった!とは書いてないみたいです。。。 パソコンとかOFFICEのヴァージョン等によっておこるのでしょうか?それとも私が根本的に間違っているのでしょうか? どなたか、教えてください。「こうでは?」とか「こうしたら?」っていう意見もお待ちしております。 原因もしりたいですが、まずは解決が先だとも思いますので。よろしくお願いします!! Excelマクロ)フィルタをかけたコピーでエラー Excelのマクロで、フィルタをかけた列のデータ値を別シートへコピー(貼付け)する マクロを作りました。 フィルタをかけて、データ値があれば問題ないのですが、 データ値がない場合、エラーがでます。(=マクロがストップします) どうしたら回避できるでしょうか? excel2003 10万件のデータ扱いたい お世話になります。 Excel2003でSheet1に貼り付けたデータを集計するマクロを作成しました。 が、この対象のデータが10万件近くあり、MAXの6万5千件を超えてしまっているのでSheet1に張り付けることが出来ません。 今からAccessに変更するのもちょっと大変なので・・困っています。 ちなみにExcel2007,2010にする事もできません。 無理だとは思いますがExcel2003でSheet1に6万5千件以上のデータを張り付ける方法はないでしょうか? フィルター可視データのCSV出力について いつも助けてもらっています。 EXCELのVBAにて、 タイトル等の不要な行を削除した上で、 データが入っている行全てをCSVファイルに出力する マクロを作って使っています。 全件をそのままCSVファイルに出力するのは問題ないのですが、 オートフィルター(手操作)にてヒットしたデータのみを CSVファイルに出力したいです。 ネットでいろいろと調べると、 可視データを他のシートにコピーして・・・やる、 というやり方しか見つかりませんが、 他のシートにコピーしないで行う方法はないですか? (マクロで実行する場合です) もし可能であるならば・・・ コードの記述でなくても、 こんなやり方・・・とか、 どこか参考になる情報でもリンクしてもらえると 助かります。 よろしくお願い致します。 フィルタオプションとシートの保護 Excel2003を使用して、あるシートに以下の設定を行なっています。 (1) 「入力規則」のドロップダウンリストからデータを選択入力する設定 (2) (1)で選択入力されたデータを抽出条件にしたフィルタオプションを設定(抽出先は指定した範囲) (3) 「マクロの記録」で(2)の作業を記録し、作成したマクロにボタンを作りボタンを押すと抽出を実行するよう設定 ※シート1に元データがあり、シート2が問題のシートになります。 このシートを保護し、他者に変更されないようにしたいのですが、保護をしていると抽出ができなくなってしまいます。 オートフィルタなら有効にする設定があるようですが、フィルタオプションは有効に出来ないのでしょうか? 他のシートを抽出先にせず、これらを実行したいのですが…。 何か良い方法があればご伝授願います。 尚、今回マクロを設定してはおりますが、実際に自分で記述して書くほどの知識はありません。 もしもマクロを使用しなければならない場合はお手数ですが、その詳細も教えて頂ければ幸いです。 宜しくお願い致します。 マクロ:フィルタの選択について 例 A列に野菜の種別(大根やトマトなど)が入力されており B列に県名が入力されています。c列以降もあり。 フィルタでA列の野菜名を選択し、抽出された結果を別シートに 貼るという野菜別のシートを作る単純な作業の繰り返しを マクロで設定したいのですが マクロの記録で行うと、フィルタで野菜名を選択する時に Selection.AutoFilter Field:=4, Criteria1:="大根" というように、名前が入力されています。 フィルタの選択を上から下に4つ目、5つ目という感じで 下に選択していくマクロを教えて頂ければと思います。 また他に良い方法がありましたら、アドバイス宜しくお願い致します。 VBA フィルターで抽出したデータを別のファイルの VBA フィルターで抽出したデータを別のファイルのシートのセルにヘッダー行とフッター行のあるシートに挿入したい お世話になります。 excel のフィルターで抽出したデータを別のファイルのシートに抽出したデータと同一フォーマットの入っている原紙がありその原紙をコピーしたシートのヘッダー行(A1-A8)の後、9行目からフッター行の手前、52行めまでに貼り付けするを、フィルターで抽出した分繰り返したいのです。原紙 のシートはコピペでしたに20枚ほど作ってあります。 マクロの記述でコピペを繰り返せば作れそうな気はしますが、汎用性が無いので、また私の頭も固いので。 宜しくお願いします。 エクセルでマクロのページカウンタ印刷表示 エクセル2002で,Sheetに表があります.同じ表を使用します.データは10件分入ります. 10件を超えると次の用紙に印刷をします. 印刷はマクロ命令で作成しています. 印刷の際,ページ番号をふりたいのですが どのように記述すればいいのか,わかりません. 1枚目には「1ページ」,2枚目には「2ページ」のように印刷できるとありがたいのです. どなたか,ご教授をよろしくお願いいたします. ヤバいパソコンが壊れたかも!?事前に知っておきたい3つの兆候と対策 OKWAVE コラム 印刷後データを変更し、また同じ雛形で印刷を繰返しをマクロで行いたい。 印刷後データを変更し、また同じ雛形で印刷を繰返しをマクロで行いたい。 シート1に印刷用の雛形があります。 セルの指定された10ケ所くらいに手入力後印刷しています。 この10ケ所の入力内容は別ファイルに有りますが そのファイルは夜間バッチで毎日更新されます。 またそのデータは今日は20行だけど明日は15行とデータ量が日々変わります。 シート2にこのデータファイルを貼り付けて そのシート2のデータの1行目(A2からJ2)の各値を シート1の所定の場所に値を貼付しシート1を1枚印刷。 その後シート2の2行目(A3からJ3)のデータを シート1の所定の場所に値を貼付し印刷。 これをシート2のデータ分(行です)繰り返し シート2のデータ(行です)がなくなったら メッセージBOXで「印刷終了」と出て印刷が停止。 というのをシート1に作成したボタン一つで行いたいです。 (シート2の値をシート1に貼付するのはマクロの記録で完成しましました。 でも駄目です(T_T)当たり前ですがデータ10行の時のマクロ記録では データが15行の時11から15行目は無視されます。 Do Loop で対処可能でしょうか?) なおシート2にデータを貼り付ける時の データ選択はエクセルの「ファイルを開く」の小画面を表示させて 使用者に選択させたいです。 ↓ fName = Application.GetOpenFilename Application.ScreenUpdating = False Set fso = CreateObject("Scripting.FileSystemObject") dPath = fso.GetParentFolderName(fName) 1.シート1の「ファイル選択」ボタンを押す。 2.ファイルを選択する。(開くをクリックすると同時にno.3が自動で行われる) 3.シート2に選択ファイルが貼り付き選択されたファイルは閉じる。 4.シート1の「印刷」ボタンを押す。 5.マクロの記録どうりにシート2の2行目の値がシート1に貼り付く 6.シート1が印刷され、シート1の値がクリア。 7.マクロの記録の法則にならってシート2の3行目の値がシート1に貼り付く 8.シート1が印刷され、シート1の値がクリア。 9.シート2のデータがなくなるまで繰り返す。 10.シート2のデータ分だけ印刷したらメッセージが出る。 データを変更して繰り返して印刷の部分が参考書やWEB検索でなかなか見つかりません。 ご教授をお願いします。 エクセルでのフィルターについて エクセル2000を使っています。 フィルターをかけた結果データを自動的に別のシートに作成するようなことはできますか? たとえば、SHEET1に1から100までのデータがあるのですが、ある条件Aでフィルターをかけて抽出された30件のデータだけの別のSHEET2、また、条件Bで抽出された20件をまた別のSHEET3に自動的に作れたらというイメージです。 よろしくお願いします。 Excelでの差込印刷 ExcelのSheet2にあるデータをSheet1の雛型に差込印刷をするマクロを作っています。 データは使用する度に件数が違うので、最終行を取得して1件ずつ差込印刷をするところまではできたのですが、10件ずつまとめて持ってくるにはどうしたらいいでしょうか。 宜しくお願いします。 オートフィルタを使った場合のコピーについて エクセルの表からオートフィルタで抽出したデータを他のシートに貼付ける際に、普通に貼り付けたら、シートによって値がはりつけらり、数式が貼り付けられたりします。どうすればよいでしょうか? 値の場合は良いのですが、数式の場合はとんでもない数字になってしまいます。 形式を選択して貼付けで、「値」を貼り付ければ良いのですが、そうすると罫線が貼り付けられません。 値と罫線と2回貼り付ければ良いのですが、データが多いので、何らかの方法があればよいのですが。 どうぞよろしくお願いします。 Excelの印刷マクロについて Excelにて、1枚のシートに他のブックの全てのシートの名称を記述し、選択したシート全てを印刷するマクロを組みたいと考えています。 数日前から考えているのですが、検討が付かず困っています。 何方かご教授願えれば幸いです。 よろしくお願いします。 【マクロ】オートフィルター内の全データが削除される こんにちは、質問させていただきます。宜しくお願いします。 [エクセル] 2007 [内容] オートフィルタをかけ任意のデータのみ消したいのですが 全てのデータが消えてしまいます。 [詳細] A1~C5までデータが入っているのもだと仮定します。 (実際には項目があってフィルタがきちんとかかるものとします。) A B C ----------------------- 1 ○ 2個 \10 2 △ 1個 \5 3 × 3個 \15 4 ○ 1個 \20 5 ○ 4個 \5 オートフィルタをかけA列を基準として「○」を選択します。 そして選択した「○」を含む行(1行・4行・5行)を削除し 2行・3行目が残るようにしたいです。 その一連をマクロにして処理したいのですが… 1行から5行のすべての行データが削除されてしまいます。 <マクロ作成> マクロを記憶する。 ↓ 手動でオートフィルタをかけ、「○」を選択して行を削除 ↓ マクロの記憶を終了。 ↓ マクロ文の削除する行範囲をA1からC5に書き換え ↓ マクロ実行 <マクロ作成文> Selection.AutoFilter Selection.AutoFilter Field:=1, Criteria1:="○" ActiveSheet.Range("A1:C5").Select Selection.Delete Shift:=xlUp ※エクセル2007のバージョンによっては選択した「○」のみ 削除されるPCもありましたので、何か設定があるのかな?と 思いましたが…解決しませんでした。 何か良い案があれば教えていただきたいです。 宜しくお願い致します。 excelの印刷用マクロ。 excelで分からない事があり困っています。 横がA~I列、縦がB列のB-1から文字が入力されている最後の行までの範囲を選択して、印刷するマクロを作りたいのですが、どうすればよろしいでしょうか。印刷したいシートには、オートフィルタが掛かっている場合もあります。その場合は、その状態のまま印刷出来る様にしたいです。 どなたか分かる方が居ましたら回答お待ちしています。 よろしくお願いします。 エクセルのオートフィルタで、あるデータにオートフィルタをかけたあとに他 エクセルのオートフィルタで、あるデータにオートフィルタをかけたあとに他のエクセルデータから データを貼り付けようとするとうまくいきません。 たとえば、オートフィルタをして30行あったものが10行に選択されたとき、その10行に他のエクセルデータから10行のデータを貼り付けたら4行くらいしか貼り付け出来ませんでした。 これはどうしてですか?わかる方がいれば教えてください。 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ パソコン・スマートフォン ソフトウェア Excel(エクセル)Word(ワード)PowerPoint(パワーポイント)Access(アクセス)その他MS Office製品オフィス系ソフトPhotoshop(フォトショップ)Illustrator(イラストレーター)その他Adobe製品画像・動画・音楽編集ホームページ作成ソフト筆まめ・はがき作成フリーウェア・フリーソフトその他(ソフトウェア) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
お礼
ありがとうございます。