「うん、こんなものかな」
データ取得プロシージャの修正を終えた八木くんは、満足そうな顔でVBEの画面を眺めます。
Sub データ取得()
Dim rs As New ADODB.Recordset
Dim sql As String
Dim i As Long
If DB接続 Then
sql = "SELECT * FROM 進捗TBL ORDER BY 番号"
rs.Open sql, CN
i = 2
Rows("2:" & Rows.Count).ClearContents
Do Until rs.EOF
:
:
Loop
Cells.Borders.LineStyle = xlLineStyleNone
Cells(1, 1).CurrentRegion.Borders.LineStyle = xlContinuous
End If
End Sub
※赤字の部分が、修正・追加したコードです。
「SQL文に'ORDER BY'を追加したぞ。
'ORDER BY'句は、レコードセットを指定したフィールドで並べ替える。
並び順を省略したときは昇順にソートされるから、これで番号順に取得するはずだ。
…あとは、'Cells.Borders.LineStyle = xlLineStyleNone'で、一旦シートの罫線をクリアする。
そして最後に、'Cells(1, 1).CurrentRegion.Borders.LineStyle = xlContinuous'で、
連続してデータが入力されているセル範囲に、罫線を引いてやる…っと。
これでいいはずだ」