⑤ セルの操作

VBAエキスパート Excel VBA ベーシック200

問題

データの行数を取得するコード「Cells(Rows.Count, 1).End(xlUp).Row - 1」において、「- 1」をしている理由は何か。

A配列のインデックスが0から始まるため
B見出し行の1行分を引くため✓ 正解
C最終行の次の空白行を引くため
DOffsetでずらした分を相殺するため

正解

B見出し行の1行分を引くため

解説

表全体の行数から見出し行(ヘッダー)の1行分を引くことで、純粋なデータ行数を求めています。

分野解説:⑤ セルの操作

本試験でもっとも実務に直結する分野です。Range はRange("A1")やRange("A1:C3")のようにアドレスの文字列で、Cells はCells(1, 2)のように行番号・列番号の数値で指定するため、繰り返し処理と組み合わせるなら Cells が扱いやすくなります。値の取得・設定は Value、表示形式は NumberFormat で扱い、Text は画面に表示されているとおりの文字列を返す読み取り専用のプロパティです。ほかに基準セルからずらす Offset、範囲を広げる Resize、Copy による複写、End(xlUp) などで表の最終セルを特定する方法が問われます。

この分野の問題をすべて見る →

本番形式で問題を解いてみよう

クイズモードで挑戦 →
← 第199201問 →

VBAエキスパート Excel VBA ベーシックについて

Excel業務を自動化するVBAの基本文法を証明する入門資格

主催株式会社オデッセイ コミュニケーションズ
出題形式40問前後/選択肢・ドロップダウンリスト・穴埋め記述(CBT形式)
試験時間50分
受験料一般 13,200円(税込)/割引受験制度適用 11,880円(税込)
合格基準1000点満点中700点以上(試験問題の更新などにより変動することがある)
難易度★★☆☆☆(公式合格率は約80%。VBA入門レベルだが、記述式があるため構文の正確な暗記が必要)
試験詳細を見る →
← 問題一覧へ戻る