セルについて

セルの行の高さと列幅の変更

 ここではセルの高さや幅の現状値を取得したり、高さや幅をVBAで変更する方法について解説します。

セルの高さと幅を取得する方法

 指定したセルの高さと幅を取得するには

  Rangeオブジェクト.Height    高さを取得

  Rangeオブジェクト.Width     幅を取得

単位は「ポイント」です。

この「Height」「Width」で高さや幅を設定することはできません。

セル範囲を対象にした場合は、対象としたセル範囲全体の高さと幅をポイントで取得します。

Sub 列幅取得()
 Dim X1 As Double, X2 As Double
 Dim X3 As Double, X4 As Double

 ’セルC1の高さと幅
 X1 = Range(“C1”).Height ‘①
 X2 = Range(“C1”).Width  ‘

 Range(“B3”) = X1
 Range(“B4”) = X2

 ’セル範囲 E3-F8 の高さと幅
 X3 = Range(“E3:F8”).Height ‘
 X4 = Range(“E3:F8”).Width ‘
End Sub

① セルC1 の高さ(単位 ポイント)

② セルC1の幅(単位ポイント)

③ セル範囲E3:F8 の高さ(単位ポイント)

④ セル範囲E3:F8 の幅(単位ポイント)

行の高さを変更する方法

 指定したセルの高さを指定するには

  Rangeオブジェクト.RowHeight = ポイント数

単位は「ポイント」です。

Sub 行の高さ指定()
 Range(“A1”).RowHeight = 20 ‘①
 Range(“A3:A5”).RowHeight = 28 ‘②
 Range(“A7”).RowHeight = 14 ‘③
 Range(“A9”).RowHeight = Range(“A3”).RowHeight ‘④
End Sub

① セルA1の行の高さを20ポイントに指定

② セル範囲 A3-A5 の行の高さをそれぞれ28ポイントに指定

③ セルA7 の行の高さを14ポイントに指定

④ セルA9 の行の高さを A3 のセルの行の高さと同じに設定

列の幅を変更する方法

 指定したセルの列幅を変更するには

  Rangeオブジェクト.ColumnWidth = 半角文字数

単位はポイントではなく「半角文字数」に注意してください。

Sub 列の幅指定()
 Range(“A1”).ColumnWidth = 5 ‘①
 Range(“C1,E1”).ColumnWidth = 16 ‘②
 Range(“G1”).ColumnWidth = Range(“A1”).ColumnWidth ‘③
End Sub

① セル A1 の幅を半角文字5文字に設定

② セル C1 と E1 の幅をそれぞれ半角文字16文字に設定

③ セル G1 の幅をセル A1 と同じ幅に設定

行と列を自動調整する方法

 指定した行や列に既に文字が入力されている場合、その入力状況に合わせて行の高さや列の幅を自動調整する場合

  Rows(行番号).Autofit

  Columns(列番号).Autofit

で自動調整できます。

Sub 行列自動調整()
 Rows(1).AutoFit ‘①
 Columns(“C”).AutoFit ‘②
 Rows(6).AutoFit ‘③
 Columns(“E”).AutoFit ‘④
End Sub

① 行 1行目の高さを自動調整

② 列Cの幅を自動調整

③④ 行69行目、列Eの高さと幅を自動調整

セルの塗りつぶしと網掛け  セルの背景をいろいろな色で塗りつぶしたり、背景にいろいろな種類の網掛けをすることがります。  塗りつぶしはセルのInterio...
セルの値や書式の削除  セルへの入力は「文字や数字」を入力の他に、「数式」の入力と「書式」の設定があります。 たとえば、A3のセルは A1とA2合計が...