見出し画像

【Day24】文系オタクのエンジニア道~問題演習②~

こんにちは
安田です

参考書が未着のため、自分がわかりうる範囲で問題を解いてみました

合格点 40/200点(40問・5点/問)
正解率 20%

今回は圧倒的インプット不足でした
問題演習を通じて吸収していきます
訳わからなさすぎました・・・

Q:VBAが利用できるアプリケーションとして正しいものを選べ(複数選択可)
A:Microsoft Excel、Microsoft Word、Microsoft PowerPoint、Microsoft Access

誤答
Excel、Accessだけかと思っていました
全部使えるなんて便利!

Q:モジュールの削除操作後に表示されるダイアログボックスで正しいものを選べ
A:「削除する前にModule1」をエクスポートしますか(はい、いいえ、キャンセル、ヘルプ)

誤答
「解放する前にModule1」をエクスポートしますか(はい、いいえ、キャンセル、ヘルプ)

ちゃんと出てきました
解放するけど、ポップアップは削除と表示されるんですね

Q:FunctionプロシージャとSubプロシージャの異なる点を選べ
A:Functionは戻り値を返すが、Subは返さない

Functionプロシージャは戻り値(Return Value)を返すことができますが、Subプロシージャは値を返さない

Q:コレクションとは何か正しいものを選べ
A:オブジェクトのグループ

コレクションはオブジェクトのグループを指します。これは、複数のオブジェクトをひとまとめにして管理するための概念

Q:基準となるセルから、相対的に指定した位置のセルを表すプロパティを記述しなさい
A:Offset
例えば、基準となるセルがA1で、右に2列、下に3行移動したセルを取得する場合、Range("A1").Offset(3, 2)と記述します
(3, 2)→(行,列)を表しています

Q:相対的な位置を表すプロパティのOffsetでマイナスの値を指定できるか?
A:できる
正の値を指定すると基準となるセルから右や下に移動
負の値は左や上に移動します

Q:セル範囲を拡大するプロパティを記述
A:Resize
例えば、B3の単一セル指定を4行、3列拡大する場合は、
Range("B3").Resize(4,3)と記述する

Q:Range("A1").End(xlDown)は何を表しているか
A:A1セルから下方向に移動して値がある最終行

Q:下記のFor Nextステートメントは2増加させて処理します。①を記述せよ
For 変数名 = 初期値 To 終了値 ① 2
 処理
Next
A:Step

構文関係

Q:開始位置から指定された文字数分を取得する関数
A:Mid
例えば、Mid("abscde",2,2)は"bs"になります
abscde の先頭から2文字進んで2文字分を取り出すので「bs」

Q:引数に指定したアルファベットを小文字に変換する関数
A:LCase
LCase(文字列)で記述ができる

Q:引数に指定したアルファベットを大文字に変換する関数
A:UCase
UCase(文字列)で記述ができる

Q:引数に指定した文字列の左端にあるスペースを取り除く関数
A:LTrim

Q:シートをコピーするメソッド
A:Copy

Sub CopySheet()
 ' シートをコピーする
 Sheets("元のシート").Copy Before:=Sheets("コピー先のシート")
End Sub

Q:シートを移動するメソッド
A:Move

Sub MoveSheet()
 ' シートを移動する
 Sheets("移動対象のシート").Move Before:=Sheets("移動先のシート")
End Sub

Q:シートを移動するMoveメソッドに指定する引数で右に移動する記述
A:After

Sub MoveSheetRight()
 ' シートを右に移動する
 Sheets("移動対象のシート").Move After:=Sheets("移動先のシート")
End Sub
Afterは右、Beforeは左

今回は関数が多めでした
初めてみるようなものが多く、インプットの重要性を感じました

参考書を読み込んでいきます
(はよ届いてー!)

参照サイト

VBAマスターに俺はなる

最後まで読んでいただき
ありがとうございます
安田

マガジンにまとめてありますので
よかったらそちらも御覧ください


この記事が気に入ったらサポートをしてみませんか?