• ベストアンサー

アクセスVBA コンパイルエラー

nicotinismの回答

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

Docmd.MoveSize メソッドを使うか Me.InsideHeight としてみましょう。 違いはヘルプをご覧ください。

mjuikjhy8
質問者

お礼

どちらでもできました! ありがとうございました。大変参考になりました。

関連するQ&A

  • 半角カタカナがVBAだと全角カタカナになる

    フォームを作って「フォーム1」にしてその上に「テキスト1」を置きました。(どちらも半角です) Private Sub Form_Open(Cancel As Integer) Form_フォーム1.テキスト1.Value = "a" End Sub にすると自動でフォームがフォームのように全角になります。 なのでこの状態でフォームを開こうとすると、 Form_フォーム1の部分でコンパイルエラーになります。 (変数が定義されてません) Private Sub Form_Open(Cancel As Integer) Me.テキスト1.Value = "a" End Sub にするとうまく行きました。 でもテキスト1は、半角のままです。 フォームだけが全角になってしまいます。これは何と言う現象でしょうか? なるべくオブジェクト名には半角を使わない方がいいのですか? ・・・と今質問分を書いて見直したら、gooでも半角を全角に自動修正するんですね。

  • Access フォームでの並べ替え OrderBy

    いつもお世話になっています。 フォームで「製品ID」が昇順に並べ替えられるよう下記のイベントを 設定しましたが、上手くいきません。 Private Sub Form_Open(Cancel As Integer) Me.OrderBy = "製品ID" End Sub お力添えよろしくお願いいたします。

  • どこにもフォーカスを当てたくない

    フォームを開いたとき、どこにもフォーカスを当てたくないです。 アクセス2003です。 フォームにテキストボックスを1つ設置して、そのフォームを開くと フォーカスがテキストボックス上で、点滅しますが どこにもフォーカスを当てない方法あるのでしょうか? Private Sub Form_Open(Cancel As Integer) Me.詳細.SetFocus End Sub とするとコンパイルエラーになってしまいます。 不可能でしょうか?よろしくお願い致します。

  • access vbaのコンパイルエラーについて

    お世話になります。 vbaは超初心者なので、説明が良くないかもしれませんがご容赦ください。 フォーム上のレコード数を一件に制限する必要があり、下記サイトを参考に作成中のデータベースに構文をあてはめてみました。 http://hatenachips.blog34.fc2.com/blog-entry-189.html サブフォーム移動時のプロシージャは、 Public Sub Form_Current() Me.AllowAdditions = Me.Recordset.RecordCount < 1 End Sub メインフォーム移動時の動作として、対象のサブフォーム名を入れて下記のような構文を 作りました。 Private Sub Form_Current() Me.新規入力 サブフォーム.Form.Form_Current End Sub ところが、「コンパイルエラー 変数が定義されていません」となってしまいました。 サブフォームコントロール名はデザインビューのプロパティで、タブの「すべて」の名前の欄にあるものだと思っているのですが、もしかしてこれが違っているのでしょうか? エラーの意味がよくわからず、困り果てています。 どなたかお力をお貸しください。 よろしくお願いします。

  • アクセスのVBについて

    先ほど立てたものですが、第二段です。先ほどは詳しい説明ありがとうございした。しかし、【Private Sub form_open(Cancel AS Integer)】のCancelの使い方が今一分りません。下の文を見ていただきたいのですが、 ★[F_顧客]フォームでは、OPENARGS引数で受け取った値を利用して、フォーム の[票題]プロパティを変更する処理を行います。 Private Sub form_open(Cancel AS Integer)  'OPENARGSプロパティによって[標題]プロパティを変更    Select Case Me.OPENARGS   Case "追加"    ME.Caption="F_顧客(追加モード)"     Case "編集"    ME.Caption="F_顧客(編集モード)"     Case Else    ME.Caption="F_顧客"  End Select End Sub 例えば、上記の場合などはなぜキャンセルが必要なのでしょうか・・・。 初心者のため、どなたか細かくご説明いただければたすかります。 m(__)m

  • フォームを開いた時にVBAでデザイン変更の許可の設

    フォームを開いた時にVBAでデザイン変更の許可の設定が出来ない(access2003) デザインビューで手作業で操作するのではなく VBAで値を設定したいのですが Private Sub Form_Open(Cancel As Integer) Me.AllowDesignChanges = False End Sub をすると ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・  実行時エラー '2448':  このオブジェクトに値を代入することはできません。 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ と言うエラーが出てしまいます。 標準モジュールで Sub test() Form_フォーム1.AllowDesignChanges = False End Sub としても同じエラーが出ます。 フォームのデザイン変更の許可は デザインビューで手作業で操作するしかないのでしょうか?

  • フォームのサイズが指定した値にならない

    accessです。 新規にフォームを立ち上げて Private Sub Form_Open(Cancel As Integer) DoCmd.MoveSize , , 10000, 10000 Debug.Print Me.InsideHeight Debug.Print Me.InsideWidth End Sub としました。 そうすると戻り値がそれぞれ 7365 17025 なのですが、 なぜ、 DoCmd.MoveSize , , 10000, 10000 で、10000を設定してるのに、 その通りにならないのでしょうか?

  • アクセス2003でカレンダーコントロールを挿入し、フォームの開くときイ

    アクセス2003でカレンダーコントロールを挿入し、フォームの開くときイベントに、 Private Sub Form_Open(Cancel As Integer) Me.Calendar7.Visible = True Me.Calendar7.Value = Date End Sub と記述しても、当日の日付が表示されません。 原因がわからないのでどなたか教えてください。

  • フォームのデータシートビューにてVBAで直接記述したSQL文を実行した結果を返すことは不可能でしょうか?

    リストボックス、コンボボックスなら Private Sub Form_Open(Cancel As Integer) With Form_フォーム1.リスト2 .RowSourceType = "Table/Query" .RowSource = "SELECT テーブル.フィールド, FROM テーブル" End With End Sub で結果を返すことは可能なのですが フォームをデータシートとして Private Sub Form_Load() Me.RowSourceType = "Table/Query" Me.RowSource = "SELECT テーブル.フィールド, FROM テーブル" End Sub とするのは不可能ですか? これを実行すると 「コンパイルエラー メソッドまたはメンバーが見つかりません」 となり、 「RowSourceType =」が選択されます。 そしてVBAの停止の意の四角ボタンを押すとユーザーフォームが図のようになります。 私のやりたいことは、クエリではなくVBAでSQL文を書き、データシートビューで表示させたいのですがやはり不可能でしょうか? (変数を代入できるため) 何でもいいのでご教授よろしくお願いします。

  • VBA:コンパイルエラー

    http://www.microsoft.com/japan/msdn/columns/office/office06012000.asp にて示されたWebクエリダイアログを作成中: 以下の 'エラー の行で 「compile error:メソッドまたはデータメンバが見つかりません」 が発生、頓挫中。 ご教授お願いします。 Dim gcolTablesOnPage(15) As String Dim gintCurrentRecord As Integer Private Declare Sub Sleep Lib "KERNEL32" (ByVal dwMilliseconds As Long) Private Sub CB1_Click() WebBrowser1.Navigate2 "http://quote.yahoo.co.jp/m3?u" Call Sleep(5999) MsgBox "*" Set colTables = WebBrowser1.Document.all.tags("TABLE") End Sub Private Sub CB3_Click() Dim colTables As Object Dim colCurrentTable As Object Dim intcntr As Integer With WebBrowser1 gintCurrentRecord = 0 Set colTables = .Document.all.tags("TABLE") For Each colCurrentTable In colTables Call cHTM(colCurrentTable.outerhtml, gintCurrentRecord) gintCurrentRecord = gintCurrentRecord + 1 Next colCurrentTable End With End Sub Function cHTM(x, gintCurrentRecord) Dim tempHtml As String tempHtml = gcolTablesOnPage(gintCurrentRecord) tempHtml = "<HTML><HEAD><TITLE></TITLE></HEAD><BODY>" & x & "</BODY></HTML>" End Function Private Sub CB5_Click() Dim gintCurrentRecord As Integer gintCurrentRecord = 0 If Me.gintCurrentRecord < gcolTablesOnPage.Count Then 'エラー Me.gintCurrentRecord = Me.gintCurrentRecord + 1 WebBrowser1.Navigate2 gcolTablesOnPage(Me.gintCurrentRecord) End If ge.Count End Function