【VBAスタンダードに挑戦!】
前回やった模擬試験をもう一度やってみました。
前回の65点から87.5点にアップ。
だけど、同じところを間違えた問題が1問、
新たに間違えたところが4問ありました。
新たに間違えた問題は、前回「カン」が当たった かな・・・
ちゃんと身についていない ということですね。
Split関数
・Split(元の文字列、区切り文字)
・元の文字列を区切り文字で区切って配列で返す
・「配列型」は無いので、Variant型で定義する
・・・・・・・・・・・・・・・・・・・・・・
Dim A as Variant '配列を使えるように定義する
A = Split(A-B-C, "-") '文字列 A-B-C を "-" で区切って配列に格納する
Msgbox A(1) '配列の2つ目の箱を表示する
※Split関数 = 配列 と考えないといけませんね。
Exit Sub
Subプロシージャーを終了させる
呼び出されていれば、呼び出し先に戻る
Exit Function
Functionプロシージャーを終了させる
呼び出されていれば、呼び出し先に戻る
Exit For
For~Next、For Each~Next ステートメントを終了させる
繰り返し処理が終了するので、Next の次の処理に移る
(For の次の回に移らない)
Exit Do
Do~Loop ステートメントを終了させる
繰り返し処理が終了するので、Loop の次の処理に移る
(Do の次の回に移らない)
これら一つひとつは理解しています。
しかし、これがどこで使用されているかをよく見ませんでした。
For Next のなかで、どの Exit を使用するか問われていました。
チラ見して、Exit For と回答してしまいましたが、それが間違い。
For Next を抜けた後に、別の処理をする一文がありました。
正解は Exit Sub にしなければいけませんでした。
Sub Test()
Dim WS As Worksheet
For Each WS In Sheets
If WS.Name = "ABC" Then
MsgBox "存在します"
Exit( )ここでExit For をしても・・・
End If
Next WS
MsgBox "存在しません" ここの処理は実行されてしまう。
End Sub
ListColumns
Range("B11").ListObject.ListColumns.Add
テーブルの右端に追加される
見出し名は「列1」、「列2」となる
テーブルに関しての用語などは まだまだ覚えきれていません。
構造化参照
#All は実際に VBA で記述するときは
[#All] となります。
しかし、タイトル行を表すときは
[都道府県] のように、「#」が不要です。
前回は [#都道府県] としてしまい間違い。
今回は [All] として 間違い・・・
お互いに足を引っ張ている・・・
明日からテキスト2週目に入ります。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/