• ベストアンサー

Access VBA ベーシックには・・・

VBAエキスパートの Access VBA ベーシックの試験を受けようと思って http://vbae.odyssey-com.co.jp/study/sample_ab.html のサンプルを見ていたのですが、 問題1や2や3はVBAの知識ではないですよね? Access VBAの試験なのに VBAには関係ない問題もたくさんでるのでしょうか?

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

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

料理に例えると、 魚を三枚におろして刺身に出来る人(VBA OKな人?)であっても 魚の特性を知らなければ フグを食べて・・ オコゼの背びれで・・ 生サバで・・ という悲惨な状況になります。 フィールドの特性を知らないとバグを抱えたりエラーになったり。 SQL文はコード中で記述することが良くあります クエリのSQL文を変更したりコントロールのソースなど。 なので、これも必須です。 以下、蛇足。 VBA Professional Office 2003 の問2は fCOUNTの値を、10000 あたりで試した方が良さそうです 当方の場合、1000000 だと Sample3は応答なしになりました。(^^ゞ 下記を標準モジュールにコピペしてお試しを。 ' Windows が起動してからの経過ミリ秒数を取得 Public Declare Function GetTickCount Lib "Kernel32" () As Long Private Const fCOUNT As Long = 10000 '←ここを変更してください Sub Sample1() Dim a As Long a = GetTickCount   Dim i As Long, j As Long   Dim myRowBuf As String   Dim myLen As Long   Dim myBuf As String   Dim myTmpStr As String   myRowBuf = "Excel"   myLen = Len(myRowBuf) * fCOUNT + fCOUNT * 3   myBuf = String(myLen, vbNullChar)   For i = 1 To fCOUNT     myTmpStr = myRowBuf & "1" & vbCrLf     Mid(myBuf, j + 1, Len(myTmpStr)) = myTmpStr     j = j + Len(myTmpStr)     'DoEvents   Next Debug.Print "1= " & GetTickCount - a  'ミリ秒で掛かった時間をイミディエイトウィンドウに出力 End Sub Sub Sample2() Dim a As Long a = GetTickCount   Dim i As Long   Dim myRowBuf(1 To fCOUNT) As String   Dim myBuf As String   For i = 1 To fCOUNT     myRowBuf(i) = "Excel" & "1"     'DoEvents   Next   myBuf = Join(myRowBuf, vbCrLf) Debug.Print "2= " & GetTickCount - a End Sub Sub Sample3() Dim a As Long a = GetTickCount   Dim i As Long   Dim myRowBuf As String   Dim myBuf As String   myRowBuf = "Excel"   For i = 1 To fCOUNT     myBuf = myBuf & vbCrLf & myRowBuf & "1"     'DoEvents   Next Debug.Print "3= " & GetTickCount - a End Sub

cvbnhytg
質問者

お礼

とてもわかりやすい説明ありがとうございます。

その他の回答 (1)

  • Microstar
  • ベストアンサー率21% (289/1367)
回答No.1

リンク先の問題を読みました。 問題1~3はAccessVBAの問題というよりも、その基本的な周辺知識に関する問題です。 それがわからないと、プログラミングできないということではないでしょうか。 そういう試験は受けたことはないですが、それらの問題が出るというのは、基本周辺知識を身につけた方が回答率が高まります。

cvbnhytg
質問者

お礼

どちらにしろ基本周辺知識を身につけた方がいいということですね。 ありがとうございました。

関連するQ&A

  • VBAエキスパート

    VBAエキスパートの公式テキストについて質問ですが http://vbae.odyssey-com.co.jp/study/text.html に“学習用データのダウンロード”というリンクがありますが、これってなんでしょうか? テキストを手に入れれば、データでテキストを自分のパソコンにダウンロードできるという事ですか? どちらにしろテキストを買わなくちゃいけないのでしょうか?

  • Access VBA サンプル

    AccessのVBAをVBAエキスパートのテキストを使い、勉強しています。サンプルが少し、わかりづらく、別のサンプル集みたいな本を買いたいのですが、お勧めのものがあれば、ぜひ教えてください。 よろしくお願いします。

  • criteria の読み方

    VBAの勉強をしていて http://vbae.odyssey-com.co.jp/study/glossary.html で、読み方を調べていたのですが 「criteria」が見つかりません。 criteriaはVBA用語ではないのでしょうか? ちなみになんと読むのでしょうか? ご回答よろしくお願いします。

  • VBAの試験 2002対応なのに私のPCでは2003!

    VBAエキスパートに興味があり、試験を受けようと思ったのですが、 エクセルもアクセスも2002対応となっています。 私のPCは、オフィスは2003なのです。 2002対応問題集のCD-ROMなどは、2003だと動かないのでしょうか?

  • Declareってなんて読むんでしょう?

    http://vbae.odyssey-com.co.jp/study/glossary.html に読み方も単語も載ってなかったので教えてください。

  • myRange = Null

    VBA Professional Office 2003の試験問題ですが http://vbae.odyssey-com.co.jp/study/sample_2003.html Sub Sample1() Dim myRange As Range On Error Resume Next '――(1) If myRange = Null Then '――(2) Debug.Print "OK" '――(3) Else Debug.Print "NO" '――(4) End If End Sub の(3)が実行されるのは、 myRange = Null が正しいからではなく、 (2)のIf myRange = Null Thenのコードが無視されたから 次のコードの(3)がたまたま実行されただけですか? (2)をIf myRange <> Null Thenにしても OKになりました。

  • 「Nz」は何て読むのでしょうか?

    「ヌズ」でいいのでしょうか? http://vbae.odyssey-com.co.jp/study/glossary.html#linkno19 を見ても載ってないので教えてください。

  • Access2000のVBAについて

    Access2000のVBAでバッチファイルを実行しようとしていますが、どのように定義をしたらよいかわかりません。サンプルがありましたら、アドバイスをお願い致します。

  • VBAエキスパートの試験について

    VBAエキスパートの試験で、 VBA Professional Office 2003 というのがありますが、 過去の問題集のようなものを捜しています。 なお、受けた方の感想をお聞かせ下さればうれしいです。 宜しく御願い致します。

  • どちらが評価されるのでしょうか?

    転職のためにaccessの試験を受けようと思うのですが サーティファイのAccessビジネスデータベース技能認定試験 と http://vbae.odyssey-com.co.jp/index.htmlのAccessVBAベーシックやスタンダートでは どちらが評価されるのでしょうか? どちらも取るに越したことはないですが 時間とお金がないのでどちらかにしたいです。

専門家に質問してみよう