Excel SQL

http://mukaer.com/archives/2010/10/17/excelsqlvlookup/
http://yizndev.blogspot.jp/2015/01/excel-sql.html
https://qiita.com/acknpop/items/cd4a6fe32bf6af409aa3

Const oRow = 2     'OutPutCellRow
Const oColumn = 1  'OutPutCellColumn
Const SQLCell = "B1"

Sub ESQL()
    
    Dim sql
    Dim str

    'SQL(B1セル)
    sql = Range(SQLCell).Value

    'ツール → 参照設定 →
    ' Microsoft ActiveX Data Objects 2.8 Library
    'チェック
    Dim cn As ADODB.Connection
    Dim rs As ADODB.Recordset
    Dim xl_file As String

    xl_file = ThisWorkbook.FullName '他のブックを指定しても良し

    Set cn = New ADODB.Connection
    
    cn.Provider = "MSDASQL"
    cn.ConnectionString _
        = "Driver={Microsoft Excel Driver (*.xls)};" _
            & "DBQ=" & xl_file & "; ReadOnly=False;"
    cn.Open

    
    Set rs = New ADODB.Recordset

    rs.Open sql, cn, adOpenStatic
    
    
    'フィールドNAME表示
    For i = 0 To rs.Fields.Count - 1
        Cells(oRow, i + 1).Value = rs(i).Name
    Next
    
    'カラム表示
    j = oRow + 1
    Do Until rs.EOF
      '1 レコード毎の処理
        
        For i = 0 To rs.Fields.Count - 1
            Cells(j, i + 1).Value = rs(i).Value
        Next

        j = j + 1
        rs.MoveNext
    Loop


    rs.Close
    cn.Close

End Sub

Sub ClearCells()

    Dim lRow    'LastCellRow
    Dim lColumn 'LastCellColumn

    lRow = Cells(oRow, oColumn).End(xlDown).Row
    lColumn = Cells(oRow, oColumn).End(xlToRight).Column


    '文字クリア
    ActiveSheet.Range(Cells(oRow, oColumn), Cells(lRow, lColumn)).ClearContents


End Sub

ショートカット

【セルコピー】
 上セル:ctrl + D (Downにコピー)
 左セル:ctrl + R (Rightにコピー)

【複数セルに同時入力】
 ctrl + Ent

セルのサイズ

高さ・・・標準フォント+α
幅・・・標準フォントで表示できる文字数

cm換算
 1point 1/72インチ(1インチ=2.54cm)
= 2.54/72 cm
= 0.03528 cm

・高さ 1cm
 1cm/0.03528(cm/point) = 28.3point

・幅 1cm
 サイズ11(11point)の場合
 0.03528 x 11 = 0.39cm/文字
1cm/0.39(cm/文字) = 2.57文字

名前付きセル範囲データから選択

■名前付きセルデータ作成(複数一括)
1.範囲選択
2.[数式]-[選択範囲から作成]

■データの入力規制
=INDIRECT(C1 & “_” &D1)