プロが教えるわが家の防犯対策術!

Sheet1ワークシートに書式なしのデータがあるとします。
A1~A100列には日付、B1~B100列には名前、C1~C100列には住所が仮にあったとしますが、
A列には、日付:2016/05/31形式で、B列・C列には文字列で、それ以外は、データがある部分まで全て罫線を引く場合はどのようにVBAを組めばよいのでしょうか?
データがある分まで判定をして書式を変更したり罫線を引いたりする事はできるのでしょうか?
すいませんがご助力のほどお願いいたします。

質問者からの補足コメント

  • 更に、全てのデータを、フォント 明朝体にも変更したいです。追記になり、申し訳ございません。

      補足日時:2016/06/10 00:53

A 回答 (1件)

最終行、最終列を自動で取得して処理する例


質問内容が今ひとつピンと判らないけど、一応、例は以下。

Dim END行 As Long
Dim END列 As String
Dim END1 As Long
Dim Sh As Worksheet
Dim strAddr As String

Set Sh = Worksheets("sheet2")

'最終行番号を取得
END行 = Sh.Range("A65536").End(xlUp).Row

'最終列番号を取得
lngColNum = Range("A1").End(xlToRight).Column

'列番号を列記号へ変換
strAddr = Cells(1, lngColNum).Address(False, False)
'列記号をセット
END列 = Left(strAddr, Len(strAddr) - 1)


Range("A1:A" & END行).NumberFormatLocal = "yyyy年mm月dd日" 'A列の書式
Range("B1:B" & END行).NumberFormatLocal = "@" 'B列の書式を文字列
Range("C1:C" & END行).NumberFormatLocal = "@" 'C列の書式を文字列


'罫線を引く
With Range("A1:" & END列 & END行)
.Borders(xlInsideHorizontal).LineStyle = xlContinuous
.Borders(xlEdgeBottom).LineStyle = xlContinuous
End With

'フォントを設定
Sh.Range("A1:" & END列 & END行).Font.Name = "MS 明朝"
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!