• 締切済み

Excel VBAにてフォームの印刷向き変更

excel2000を利用しています。 以下のように、フォームを印刷するボタンを作成しました。 Private Sub cmd印刷_Click() Me.PrintForm End Sub ページ設定やプリンタの設定で縦横の切り替えを行っていますが、実際印刷すると、印刷向きは縦から横に変更が出来ません。 印刷向きを横にして印刷する方法または、印刷設定が出来る方法があれば教えてください。 よろしくお願いいたします。

みんなの回答

  • mar00
  • ベストアンサー率36% (158/430)
回答No.2

印刷する時の印刷の向きではなくてページの方向を 左から右でなくて上から下にしたいという事でしょうか。 そうであれば ActiveSheet.PageSetup .Order = xlOverThenDown とすればいいと思います。

puyopa
質問者

お礼

回答ありがとうございます。 残念ながら、1番の方と同じで、ご回答いただいた内容だと、ワークシートの印刷向きを変えるものであって、 フォームの印刷向きを変えることは出来ませんでした。

全文を見る
すると、全ての回答が全文表示されます。
  • mar00
  • ベストアンサー率36% (158/430)
回答No.1

ActiveSheet.PageSetup.Orientation = xlLandscape を追加してみてはどうでしょうか。

puyopa
質問者

お礼

回答ありがとうございます。 残念ながら、ご回答いただいた内容だと、ワークシートの印刷向きを変えるものであって、 フォームの印刷向きを変えることは出来ませんでした。

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

関連するQ&A

  • Excel VBAにてフォームの印刷向き変更

    以下のように、フォームを印刷するボタンを作成しました。 Private Sub cmd印刷_Click() Me.PrintForm End Sub プリンタの設定で印刷する前に、プレビュー画面を確認するようにしていますが、こちらでは印刷向きは縦から横に変更が出来ません。 印刷向きを横にして印刷する方法または、印刷設定が出来る方法があれば教えてください。 単純な質問で失礼かもしれませんが、よろしくお願いいたします。

  • フォームのビューの設定をvbaでするには

    今はフォームビューで表示させていて、 フォーム上のコントロールをクリックすると、 Me.Controls("").Form.SetFocus は、 1が返ります。 Private Sub cmd_表示切替_Click() Debug.Print Me.CurrentView DoCmd.RunCommand acCmdDatasheetView End Sub みたいなことをしたいのですが、 これだとエラーになります。 上記コードはテストコードですが、 実はデータシートビューではなく、 単票フォームと帳票フォームをボタン一つで切り替えたいです。 Debug.Print Me.CurrentView で、現在のフォームの状態が取得できるから、 DoCmd.RunCommand acCmdDatasheetView このような方法で設定できれば、 ifステートメントで切り替えられると思うのですが、 設定の仕方がわからないので教えてください。

  • Excel ユーザーフォームのコンボボックスについて

    始めまして、マクロに関してはまだまだ勉強中なのですが、ユーザーフォームのコンボボックスについてつまづいてしまい、皆さんにご教授頂ければと思います。 一つユーザーフォームを作成後、そのフォーム内にコンボボックスを配置し、リストから項目を選択できるようにしたいと考え下記のように記述したのですが、ユーザーフォームを実行してもフォームは表示されてきますが、ボックスを選択してもリストに項目が表示されてきません。 Private Sub cmd入力_Click() End Sub Private Sub 選択グループCombo_Change() With 選択グループCombo .AddItem "初級" .AddItem "中級" .AddItem "上級" Private Sub cmd閉じる_Click() Unload Me End Sub この記述自体が間違っているのでしょうか。 宜しくお願いします。

  • アクセスVBA 変数を渡したい

    フォーム1のcmd_ボタンをクリックして、フォーム2を開く際に、変数を渡したいのですが、どう渡せばいいのでしょうか? Private Sub cmd_ボタン_Click() myStr = "あああ" DoCmd.OpenForm "フォーム2" (myStr) End Sub とすると、エラーになります。 文の書き方を教えてください。

  • EXCEL VBAのユーザーフォームに引数を渡す方法について

    すいません、EXCEL VBAのユーザーフォームに引数を渡す方法についてご質問があります。 シート上にコマンドボタンを2つ用意する。 コマンドボタン1を押すと変数mは1 コマンドボタン2を押すと変数mは2 としてユーザーフォームを呼び出す。 Public m As Integer Private Sub CommandButton1_Click()  m = 1  Call フォーム呼び出し(m) End Sub Private Sub CommandButton2_Click()  m = 2  Call フォーム呼び出し(m) End Sub Sub フォーム呼び出し(m As Integer)  UserForm1.Show End Sub 次にユーザフォームにコマンドボタンを1個置き、 ボタンを押したとき、mが1であれば「ボタン1」 mが2であれば「ボタン2」 とメッセージボックスを出し、ユーザーフォームを閉じる。 Private Sub CommandButton1_Click()   If m = 1 Then    MsgBox "ボタン2"   ElseIf m = 2 Then    MsgBox "ボタン2"   End If  Unload UserForm1 End Sub プロシージャ間の引数渡しは色々なテキストに載っているのですが ユーザーフォームに引数を渡す方法はどうも見つからず、 Private Sub CommandButton1_Click(m) としても、コンパイルエラーとなってしまいます。 よろしくご教示をお願いいたします。

  • Userform内のFrameのCaptionが印刷できないのですが

    VBAでUserFormを印刷しようとしたのですが、UserForm内のFrameのCaptionのみ印刷されません。その他Frameの枠とかUserForm内のLabelとかは印刷できるのですが、何か設定等あるのでしょうか?一応UserForm内にCommandButtonを作りクリックで印刷させようと考えているのですが、ちなみにコードは Private Sub CommandButton1_Click() Userform1.Printform End Sub としています。なにか方法があれば教えてもらえないでしょうか。よろしくお願いします。

  • EXCELで縦横混在の印刷

    EXCEL2010です。縦横混在のシートがあり、それぞれのシートで縦で印刷するか横に印刷するか設定してあります。それを全シート印刷で印刷すると(この場合 縦か横かしか選べないので縦印刷でします) 横設定のシ-トも縦に印刷され、部分的に切れてしまいます。縦横混在で全シート印刷する方法はないでしょうか? 宜しくお願いします。

  • エクセルVBA テキストボックス

    いつもお世話になっております。 エクセルでVBAを使いユーザーフォームのテキストボックスで 文章入力をしようと思っているのですが、少しトラブルがありましたのでお教え願います。 エクセルシートの横がa~k、縦を9~34までのシートを結合して その中にテキストボックスで入力した文章を入れるように作っています。 MultiLineとEnterKeyBehaviorをTrueにして Private Sub CommandButton1_Click() Unload Me End Sub Private Sub TextBox1_Change() Sheets("sheet1").Range("a9") = UserForm1.TextBox1 End Sub Private Sub UserForm_Initialize() TextBox1.Value = Range("a9").Value End Sub Private Sub UserForm_Activate() With Me .Left = Application.Left .Top = Application.Top .Left = .Left + 350 .Top = .Top + 80 End With End Sub という状態になっているのですが、文章を入力して16行目で改行するとシートの方で「#VALUE!」と出てきてしまうので一旦ユーザーフォームを閉じてもう一度フォームを立ち上げると 「実行時エラー’-2147352571(80020005) Valueプロパティが設定できません。種類が一致しません。」 と出てきます。 デバッグすると  Private Sub CommandButton1_Click() → UserForm1.Show  End Sub と出てきます。 なにがおかしいのでしょうか? 今回初めてVBAを作っているので初歩的な間違いかもしれませんがよろしくお願いします

  • Excel(VBA)シート上のコマンドボタンクリック時に

    Sheet1に配置したのコマンドボタン(cmd1)を押した時に, Sheet2上に配置したコマンドボタン(cmd2)を押した時と 同じ処理を走らせたいのですが。 Sheet2に、 Private Sub cmd2_Click() MsgBox"処理が走りました" End Sub Sheet1に、 Private Sub cmd1_Click() WorkSheets("Sheet2").Shapes("cmd2").??? End Sub ???に色々候補があがりますが、この候補の中のどれかを使うことは可能ですか? Sheet2の cmd2_Click() 以下の処理を、標準モジュールに書いて呼ぶしかないのかと 思ったのですが、直接、cmd1_Click() から cmd2_Click()の処理を呼べたらいいなぁと 思って質問させて頂きました。 可能か、不可能か教えてください。 バカな質問だということは心得ておりますが、当方、初心者ゆえ何分お許し下さい。 Ver.2000

  • EXCElのVBAからPDFを開き印刷する。

    エクセルのフォームからダイヤグロボックスを開いて、pdfファイルを選択し開き印刷したいのですが、いろいろやったのですが、ファイルが開きません。単純にファイル名を指定して開き印刷するのは出来るのですが。ダイヤグロボックスから開きたいのでどなたかご指導いただけませんか? 1.直接アクロバットリーダーからファイルを開き印刷   Private Sub CommandButton2_Click()    PrinterName = Application.ActivePrinter    Filename = "C:\○○\××××.pdf" Set myShell = CreateObject("WScript.Shell") myShell.Run ("AcroRd32.exe /t " & Filename) End Sub 2.ダイヤグロボックスからファイルを開く Private Sub microbe_Click() ChDrive "R" ChDir "R:\○○\××\△△" OpenFileName = Application.GetOpenFilename("PDF Documents,*.pdf")   ??? end sub よろしくお願いします。

このQ&Aのポイント
  • プリンターモニターに「インクを検知できません」というエラーメッセージが表示されて印刷ができない問題の解決方法を教えてください。
  • 一月前頃からプリンターモニターに「インクを検知できません」というメッセージが表示され、ブラックインクを交換しても解決しない状況に困っています。どうすれば印刷できるようになるでしょうか。
  • MFC-J6710CDWのプリンターモニターに「インクを検知できません」というエラーメッセージが表示され、ブラックインクの交換や指示通りの操作を試しても解決しない状態です。どのようにすれば印刷できるようになるのでしょうか。
回答を見る

専門家に質問してみよう