ベストアンサー ※ ChatGPTを利用し、要約された質問です(原文:印刷したい用紙の大きさによって、マクロの設定を変えるには???) マクロの設定で用紙の大きさに応じて印刷する方法 2001/07/15 11:05 このQ&Aのポイント エクセルのマクロを使用して用紙の大きさに応じて印刷する方法を教えてください。現在、A4サイズにピッタリ収まるように設定してあるエクセルがあり、マクロの繰り返し処理で常に「+1した数値」を右に9回表示させていますが、B5サイズで印刷したい場合にはどのようにマクロを設定すればよいですか?用紙のサイズに応じてマクロの設定を変えたいですが、簡単な方法はありますか? 印刷したい用紙の大きさによって、マクロの設定を変えるには??? 今、A4版にピッタリおさまるように設定してあるエクセルがあって、 マクロの繰り返し処理で、 A1セルから始まって、A1+1=B1,B1+1=C1…というように、 常に「+1した数値」を右に9回繰り返し表示したら, A2(次の行)に「+1した数値」を表示させなさい というものを作成しているのですが… A1の値が1だとすると、J1が10になりますね。 それで、右に9回繰り返し表示させたら…なので、 A1が1だとした場合には、J1に10を表示させた後、 A2に11と表示させるという設定をしてあります。 今、A4版にキッチリ納めるためには、 セル幅の都合、9回がJUSTとし、印刷しているのですが、 これを今日はB5版で印刷したいワ!というような場合には、 どのようにマクロを設定したら良いでしょうか。 B5版のシートを作って、繰り返す回数を9回ではなく、 少なめに設定すればできることは分かるのですが、 そうではなくて、 B5版なら7回繰り返す,A4版なら9回繰り返す, B4版なら12回繰り返す…などなど 用紙によって、パッと設定を変えるなど…そんな贅沢は無理ですか? 意味不明かな… 質問の原文を閉じる 質問の原文を表示する みんなの回答 (1) 専門家の回答 質問者が選んだベストアンサー ベストアンサー trytrytry ベストアンサー率37% (13/35) 2001/07/15 11:50 回答No.1 ActiveSheet.PageSetup.PaperSize プロパティを利用すれば可能です。 例としては Select Case ActiveSheet.PageSetup.PaperSize Case xlPaperB5: cnt = 7 Case xlPaperB4: cnt = 12 Case xlPaperA4: cnt = 9 End Select (cntは繰り返し回数) ヘルプでPageSetupかPaperSizeで引けると思います。 質問者 お礼 2001/07/20 13:28 やってみます。。。 ありがとうございました。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピュータープログラミング・開発Visual Basic 関連するQ&A こんなマクロを作るには マクロ初心者です。 以下のようなことをしたいときにマクロの方法を教えて頂けると助かります。 1)セルA1に、数値を入力。 2)セルB1に、A1の数値を使った複雑な計算を行う。 3)セルC1にある別の既定の数値とB1が同じなるまで、A1の数値を入力し直す。 (例えばA1は、0.1間隔で数値を入力していく) このようなものをマクロで設定したいです。 今はひたすらA1の数値を入力し直して対応しています。 なにとぞよろしくお願いいたします。 エクセルのマクロで、印刷設定をしたいのですが可能でしょうか? エクセルのマクロで、印刷設定をしたいのですが可能でしょうか? お世話になっています。 会社での作業を少しでも効率よく出来ないものかと、以下のようなことを考えています。 エクセル2003を使用していますが、下記のような動作をするマクロを組むことは可能でしょうか? よろしくご教授ください。 Sheet1は、入力用のシートとして使っています。 Sheet2は、Sheet1に入力された商品データなどから、必要な箇所のみ反映されるように設定しています。 このシートは、罫線などが存在し表形式になっており、全てを印刷するとA4用紙6枚分になります。 そこで、Sheet1(入力用のシート)のJ18セルに文字が入力された場合は、Sheet2(印刷用のシート)の1ページだけを印刷したく、Sheet1のj27セルに文字が入力された場合は、Sheet2の2ページまで・・・ Sheet1のJ36に文字が入力された場合は、Sheet2の3ページまでという風に印刷範囲を設定しなくても印刷出来るようにしたいのです。 よろしくお願いします。 エクセルのマクロ エクセルのマクロでわからないことがあり質問なんですが A1セルの数値がリアルタイムに更新されていて このA1セルの数値が更新されるたびに B1とB2にA1セルの最新の値を交互にコピーしていくマクロを 作りたいんですがうまくいきません。 例としては A1に1と表示→B1に1と表示 A1に7と表示→B2に7と表示 A1に18と表示→B1に18と表示 これをA1セルが更新され続ける限り繰り返しすマクロです。 どなたか教えていただけるとありがたいです。 ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム エクセルのマクロ 仕事の都合で早急に仕上げなければならないことがあり 困っています。 内容としては エクセルのA1セルに0~無限までの数値がランダムに 繰り返し表示されるとした場合で (例えばA1セルに0と表示された後、数秒たつと10000と表示されて、 また数秒たつと3000と表示されて、 また数秒たつと0になったりをA1セルは繰り返します。 A1に表示される数値も更新時間も完全にランダムです。) 1以上の数値がA1セルに表示された場合のみ その数値をB1セルに抜き出し、更新毎にB1セルで合計し続ける。 (例えばA1に10と表示されるとB1に10と表示し その後A1に100と表示されるとB1に110と表示 その後A1に300と表示されるとB1に410と表示) というマクロを作りたいのですが完全に手詰まりになってしまっています・・・ どなたか詳しい方いらっしゃいましたら申し訳ございませんが 知恵を貸していただけないでしょうか? よろしくお願いいたします。 【Excel】マクロで印刷範囲の設定 Excel2003を使用しています。 マクロで印刷範囲を設定するコードを書きました。ページを追加するマクロを実行したときに一緒に実行するようにしているのですが、コードで指定している範囲外にデータがあるせいか、その列まで印刷範囲に設定されてしまいます。このデータは印刷範囲には入れたくないのですが、どうしたらいいでしょうか? ちなみに、印刷範囲部分のコードは .PageSetup.PrintArea = Range(Cells(1, 1), Cells(j, 24)) Y1セルとZ1セルにデータが入力されています。マクロを実行すると、印刷範囲がA1:Zjに設定されます。印刷範囲はX列までに設定したいのですが、可能でしょうか?よろしくお願いします。 excelマクロでセル値をフッターに設定&印刷 改ページごとに(異なる)セル値をフッターにセットし、フォントサイズを32に設定したい。 A列の全てのセルに「品名」が入力されている表があります。 下の表のイメージですが、1行目を印刷タイトルとし、1ページ目は2~3行まで、2ページ目は4行のみ、3ページ目は5~6行まで・・・というように品名が変わるごとに改ページが既に設定されています。 B列の印刷枚数も品名ごとに枚数が決まっており数値が入力されています。 A B 1 品名 印刷枚数 2 あ 2 3 あ 2 4 い 3 5 う 1 6 う 1 この表は数百行(数十ページ)続いているのですが、各ページに該当する品名をそれぞれフッター(左)に設定し、フォントサイズを32にし、更に各ページに該当する印刷枚数分だけまとめて印刷するマクロを作りたいです。 アドバイスのほど宜しくお願いします。 印刷範囲の設定で教えてください。 再三再四で申し訳ございません。 マクロで印刷範囲設定は ActiveSheet.PageSetup.PrintArea = "$B$1:$H65" と範囲を固定するのが一般的と思うのですが、 印刷範囲が利用者毎に相違するため 開始セル値を A8 セルに 最終セル達を A10 に置く形で 印刷範囲を任意変更可能にしたい場合には セル値で印刷範囲設定する方法を お教えくださいますよう 御願いいたします。 Excelのマクロにおいて、期間指定で印刷範囲の設定方法 Excelのマクロにおいて、期間指定で印刷範囲の設定方法 Excelのマクロで分からない事がありましたので質問させて頂きます。 Excelで、特定の期間(例えば2010/7/1~2010/10/31)以外の日は 特定のセルを印刷しないよう設定する事は可能でしょうか。 例えば… A1セル TODAY関数 B1セル ああああ C1セル いいいい D1セル うううう とした場合、指定期間(例えば2010/7/1~2010/10/31)はA1~D1までを印刷範囲として、 指定期間以外はC1のみを印刷範囲から外したい、という事です。 指定期間過ぎたらセル削除…という方法では事情により駄目なのです。 無茶な事言っているかもしれませんが、可能な方法がありましたらご教授お願い致します。 ちょっと特殊な連続印刷のマクロを教えてください 次のような名簿があるとします。 A列 B列 通し番号 名前 1 阿部 2 佐々木 空白 空白 4 木村 5 田辺 空白 空白 空白 空白 8 三浦 通し番号が入力されていない場合は、名前も表示されない様になっています。 セルC1に通し番号を順々に表示(マクロで指定) セルC2にその番号の名前を参照表示←個人票として印刷 番号があれば(名前が表示されれば)印刷 としたいです。 個人票を連続印刷したいのですが、空白を飛ばして、 番号が入っている人だけを印刷、というマクロがどうしても組めません。 一つ一つ、番号が入っていれば名前を印刷のようなマクロを延々と 組むことは出来るのですが、名簿が長大なのでそれは避けたいです。 よろしくお願いします。 Excel2003のマクロ設定 マクロの設定の仕方について質問します。 A1に123456…26 A2に123456…26 … A8002に123456…26 とかかれてなっています。 これをA1セルのものをA1に1、B1に2、C1に3…、X1に26 A2セルのものをA2に1、B2に2、C2に3…、X2に26 … A8002まで設定するにはどのようにしたらいのでしょうか。 何卒、よろしくお願い申し上げます。 エクセルマクロ超初心者で、悩んでます。 エクセルマクロ超初心者で、悩んでます。 どなたか助けてください。 悩みはこうです↓ データ用のワークシートのセルに数字、文字が入力してあります。 セルの数値同士の引き算で算出した数値を列数として、別の印刷用のワークシートのセル番地(列、行)に、「文字」を表示したいのです。 日本語で書いちゃうと ワークシート「印刷用」の、あるセル番地(ワークシート「データ用」から、列数はJ1‐A1、行数はのB1の数値)に ワークシート「データ表」のC1の文字 を出力せよ です。 Worksheets選択がうまくいきません CellsかRangeを使うのかと思いますが、引き算する表現がわかりません・・ 文例があれば、稚拙ながら活用できるかなと思います。 よろしくお願いします! マクロの組み方を教えてください セルAに1000から8999までの数値があります。 セルAの配下のセルBに1から9までの数値があります。 セルBの配下のセルCに1から31の数値が入れられます。 セルCは最大数31で、現在入っているデータの個数は欠番もあるため データの個数が10個であっても最大の値が10というわけではありません。 欠番のないものには最大数プラス1の値を 欠番のあるものは、その最小の欠番をセルCを参照してセルDに出したいのですが ExcelまたはAccess(2007)でどのようなマクロを組めばいいでしょうか。 現在手動確認でやっているため、時間がかかりかつ、見落としのミスも多いです。 1000-1-1 2 3 →4 を表示させたい。 1000ー2-1 3 5 6 →2を表示させたい。 ご指導いただけないでしょうか。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム Excel マクロ・VBAの印刷方法について 急ぎの回答です!! 関数式の入っているセル(空白表示)を印刷範囲に入れずに印刷する方法を教えてください。 別シートのデータを関数で引っ張てきてひな形のセルに表示しています。 行→$1:$6 列→$A:$Agは印 刷タイトルに設定。 A列7行目から1.2.3... とNo.が入っており、 B.~J. 列7行目からはデータが最終の50まで入力してます。( 関数式=IF(COUNTIF(コード,$S$1)<ROW(A1),"",OFFSET([元リスト.xlsx]商品一覧!A1,MATCH($S$1,コード,0),1)) ) K.~AG.列7行目からは書式データ(同じ文面の繰り返です。最終の50まで入っています)B~J列の7行目から関数(データ)=IF(COUNTIF(コード,$S$1)<ROW(A1),"",OFFSET([元リスト.xlsx]商品一覧!A1,MATCH($S$1,コード,0),1))をコピぺと一部を変更しセルへ入力して別シートからデータを引っ張てきてます。この関数だと該当する値がない場合はセルは表面上は空白セルに見えますが、セルには数式が入っている状態です。セルデータの最終行を習得し印刷に設定すると関数入力されているところで最終行と認識し、関数式を入れている50行まで印刷してしまいます。 したいことは、データが表示されている30行までなら30行まで印刷という感じにはできないでしょうか? シートを様式一枚ずつ作成しており、1ブックには20シートずつ保存しています。そしてこのブックはおよそ30ブックあります。 1ブック内の全てのシート(20シート)に反映できるようしたいです。 ※30行までデータが表示されている場合、C~Jには途中とちゅうで空白欄がありますが、B列は30行全てデータの表示(該当する場合)されます。 Excel マクロ VBA に詳しい方回答お願いします! B7からはB56まですべて関数式を入力しています(最大50までデータが表示されるように) シート枚数と、元のデータ数が行で7000程とかなり多く、このような関数式になりました。できればマクロ、VBA等での処理が望ましいです(時間がないので><)よろしくお願いいたします!!! マクロで印刷頁を設定する方法はありますか? エクセルのワークシートに【印刷シート(全5頁)】があるのですが、 この印刷シートの各頁の指定行をみて、空白でなければ該当頁を印刷するマクロは存在するのでしょうか? 具体的に申し上げれば以下のようになります。 1頁目→必ず印刷 2頁目→セルA20が空白でなければ1・2頁を印刷 3頁目→セルA40が空白でなければ1~3頁を印刷 4頁目→セルA60が空白でなければ1~4頁を印刷 5頁目→セルA80が空白でなければ全頁印刷 条件分岐IF THEN を使うのかとは思うのですが、複雑になると 全くマクロが組めないぐらい初心者です。 どなたかご教授いただけると助かります。 よろしくお願いします。 マクロの初心者 マクロの超初心者です。 マクロの記録を行ってそのコードを表示し、学習を始めたばかりの初心者です。 A1セルに、数字100が入力されてるとします。 A2セルに、A1セルの数値を取り出して 1 を加えて 表示させるコードはどのようになるのか、どなたか おしえてください。 宜しくお願いします エクセルで印刷範囲を自動で指定し、印刷するマクロ エクセルの表の中から、ある特定の文字が入っている セルを探し、そのセルから「下に3、右に2」の範囲 (文字が入っているセルは含まない)を自動的に範囲 指定して印刷するマクロをつくりたいのですが、どうすればよいでしょうか? たとえば、「○」が入力されているセルが A2だとすればA3からC5を自動的に範囲指定して印刷 するようにしたいのです。 どうぞよろしくお願いします。 エクセルのPrivate Sub Worksheet_Change エクセルのPrivate Sub Worksheet_Change すいません。どうやっても動作しません。 シート1のB5のセルに英数字を入力しエンターを押して確定すると シート2のC列から同レコードを検出し、その検出された行のB~E列の値を シート1のH4、H5、H6、J7に値をかえします。 またB5の値はH8にも表示されます。 データがあった場合には、シート1のH4、H5、H6、J7に値が表示されています。 シート2にデータが無い場合はシート1のH4、H5、H6、J7には「#N/A」と表示されます。 ここまでは関数と計算式なのでマクロではありません。 ここでフォームで作成した「印刷ボタン」をクリックします。 すると「印刷ボタン」に登録したマクロが起動します。 シート1のセルG4~J11までが印刷されます。 マクロの内容は シート1のH4に「#N/A」が表示されている場合はメッセージボックスで 「データがありません」と出ます。印刷は実行されません。 H4が「#N/A」以外の場合は印刷が実行されますがその前に シート3のセルA1の数値をプラス1してシート3のB2に、セルA1の値の先頭にAを付けて 表示します。(セルA1が0002ならB1はA0002) それがシート1のH12に表示されます。(H12への表示は計算式で対応) 印刷ボタンを押すごとにシート3のセルA1は1づつ繰り上がります。 シート1のH12の値が変わってから印刷がされます。 と同時に シート1のセルB5がDELETEされセルB5がアクティブになります。 結果シート1のH4、H5、H6、J7、H8は「#N/A」が表示されます。 H12はクリアされません。 印刷終了後にもセルの値が変化する事になります。 もう一つフォームで作成した「初期化」というボタンがあります。 これをクリックするとマクロが起動して シート1のセルB5がDELETEされセルB5がアクティブになります。 よってシート1のセルH4、H5、H6、J7、H8も「#N/A」に値が変わります。 ここまでは完璧に動作しています。 でこの「印刷ボタン」を押してマクロが起動ではなく セルB5に入力しエンターを押したらマクロを起動させたいです。 Private Sub Worksheet_Change(ByVal Target As Range) を利用しましたが動作しません。 シート1のB5のセルに入力しエンターを押すと シート1の一部のセルの値が変化。 印刷ボタンを押すと、シート3の一部のセルの値が変化し その後再びシート1のセルの一部が変化し印刷が開始され その後シート1のセルB5がDELETEされアクティブに。 それに伴いシート1の一部のセルの値が変化する。 マクロが起動すると、シート1とシート3のセルの値が数回変化します。 このような場合はPrivate Sub Worksheet_Change(ByVal Target As Range)で セルB5の入力後エンターで確定しての上記のマクロ起動は無理なのでしょうか? エクセルのマクロ こちらではいつもお世話になっております。 早速ですが、教えて頂きたい事がございます。 マクロ(VBA)でブックAのセルA1からA4、一つ飛んでC1からC3、また一つ飛んで・・・ という感じで、これをコピーし、ブックBのA1からA4、一つ飛んでC1からC3、また一つ飛んで・・ という感じで貼りつけ(数値のみ)をしたいのですが、ブックAでコピーしたいセルが選択されないよう で、数値のコピーを出来ません。 コピー出来たと思ってブックAを観てみると、違う数字が貼りつけされているセルがあります。 自分自身の知識の中で思いつく限り試しても、どうしても上手くいきません。 同じようなマクロをブックAとブックBで設定しているのですが、 他のモノは問題なくコピー&貼りつけ出来ています。 それだけに余計に頭がこんがらがっています。 わかりにくい質問かもしれませんが、ぜひお教え下さい。 2画面を1枚の紙に印刷したい 次の2点について教えてください。 1. Excell2003である数値(A)を元にその右に棒グラ フ(B)を作成しています。A,B別々に印刷はできるのです が、これを1枚の紙に印刷できないのでしょうか。 2。 ある特定のセルを特定の色で塗りつぶしをしていますが、その 色が表示されません。印刷プレビューでは表示されます。画面上 で表示する方法を教えてください。(以前が画面上で表示できたの ですが) マクロを教えてください 次のようなマクロを組みたいのですが...。 全くの素人なのでわかりません。 詳しい方、ご回答頂けたらと思います。 エクセルでシート1のA-1~A-5に入力した数値がシート2のA-1~A-5に入力されている基本数値とそれぞれ比較して、「多い」「同じ」「少ない」をシート1のB-1~B-5にそれぞれ表示するマクロ A-1に1月、B-1に2月、C-1に3月...というように毎月数値を入力していき、12ヶ月分の数値が埋まった時点でボタンを押すと入力されていた数値がクリアされるマクロ 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター プログラミング・開発 Microsoft ASPC・C++・C#CGIJavaJavaScriptPerlPHPVisual BasicHTMLXMLCSSFlashAJAXRubySwiftPythonパフォーマンス・チューニングオープンソース開発SEOスマートフォンアプリ開発その他(プログラミング・開発) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
お礼
やってみます。。。 ありがとうございました。