オデッセイの運営サイト一覧

Excel®️、Accessのマクロ・VBAのスキルを評価する資格VBAエキスパート

企業・教育機関の皆さまへ 試験会場を探す お問い合せ

やってみよう!Excel VBAで業務改善!|持続可能なスキーム編

第29話「データ登録処理を完成させよう!」

第29話「データ登録処理を完成させよう!」

登場人物紹介

プロシージャの修正完了

「うん、こんなものかな」

データ取得プロシージャの修正を終えた八木くんは、満足そうな顔で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'で、
連続してデータが入力されているセル範囲に、罫線を引いてやる…っと。
これでいいはずだ」

一覧へ戻る

MENU