Excel > TIPS

「Excel/TIPS」の編集履歴(バックアップ)一覧はこちら

Excel/TIPS」(2014/01/09 (木) 14:08:29) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

-[[ガントチャート-free>>http://exl-apps.jimdo.com/%E3%82%AC%E3%83%B3%E3%83%88%E3%83%81%E3%83%A3%E3%83%BC%E3%83%88-free/]] -[[開発マイルストーン>>http://zudajijp.zouri.jp/km/]] -[[インサート文生成マクロ>>http://sugarmemo.blog7.fc2.com/blog-entry-5.html]] --Excelのシートに記述したデータを、SQLのInsert文に変換するマクロ ■使用例 以下の要領でシートにデータを記述します。 ・1行目に列名 ・2行目に列の型 ・3行目以降は列の値 ・最後の次の行の1列目のセルに、エンドマーク『#END』 上記の要領で書き上げたシートが下図です。(クリックで拡大) -[[ExcelからSQLのINSERT文を作成するマクロ>>http://d.hatena.ne.jp/grachro/20110619/1308488583]] Option Explicit Sub createInsertSql() Dim newbook As Workbook Dim currentCell As Range '前処理 Dim srcSheet As Worksheet Set srcSheet = ActiveSheet Dim targetRange As Range Set targetRange = srcSheet.UsedRange 'INSERT文の前半 Dim head As String head = "INSERT INTO " & srcSheet.Name & " (" Dim first As Boolean first = True Dim currentColumnIndex As Integer For currentColumnIndex = 1 To targetRange.Columns.Count If (first) Then first = False Else head = head & "," End If Set currentCell = srcSheet.Cells(1, currentColumnIndex) head = head & currentCell.Value Next head = head & ") " '新しいBook作成 Set newbook = Workbooks.Add 'INSERT文のvalues以降 Dim currentRowIndex As Integer For currentRowIndex = 2 To targetRange.Rows.Count Dim sql As String sql = head & "values (" first = True For currentColumnIndex = 1 To targetRange.Columns.Count If (first) Then first = False Else sql = sql & "," End If Set currentCell = srcSheet.Cells(currentRowIndex, currentColumnIndex) If IsNull(currentCell) Or Trim(currentCell.Value) = "" Then sql = sql & "null" ElseIf IsNumeric(currentCell.Value) Then sql = sql & currentCell.Value Else sql = sql & "'" & currentCell.Value & "'" End If Next sql = sql & ");" newbook.ActiveSheet.Cells(currentRowIndex - 1, 1).Value = sql Next End Sub #amazon2(468x60) EOF
-[[進捗管理表のフォーマットサンプル>>http://blog.admage.jp/?p=288]] -[[ガントチャート-free>>http://exl-apps.jimdo.com/%E3%82%AC%E3%83%B3%E3%83%88%E3%83%81%E3%83%A3%E3%83%BC%E3%83%88-free/]] -[[開発マイルストーン>>http://zudajijp.zouri.jp/km/]] -[[インサート文生成マクロ>>http://sugarmemo.blog7.fc2.com/blog-entry-5.html]] --Excelのシートに記述したデータを、SQLのInsert文に変換するマクロ ■使用例 以下の要領でシートにデータを記述します。 ・1行目に列名 ・2行目に列の型 ・3行目以降は列の値 ・最後の次の行の1列目のセルに、エンドマーク『#END』 上記の要領で書き上げたシートが下図です。(クリックで拡大) -[[ExcelからSQLのINSERT文を作成するマクロ>>http://d.hatena.ne.jp/grachro/20110619/1308488583]] Option Explicit Sub createInsertSql() Dim newbook As Workbook Dim currentCell As Range '前処理 Dim srcSheet As Worksheet Set srcSheet = ActiveSheet Dim targetRange As Range Set targetRange = srcSheet.UsedRange 'INSERT文の前半 Dim head As String head = "INSERT INTO " & srcSheet.Name & " (" Dim first As Boolean first = True Dim currentColumnIndex As Integer For currentColumnIndex = 1 To targetRange.Columns.Count If (first) Then first = False Else head = head & "," End If Set currentCell = srcSheet.Cells(1, currentColumnIndex) head = head & currentCell.Value Next head = head & ") " '新しいBook作成 Set newbook = Workbooks.Add 'INSERT文のvalues以降 Dim currentRowIndex As Integer For currentRowIndex = 2 To targetRange.Rows.Count Dim sql As String sql = head & "values (" first = True For currentColumnIndex = 1 To targetRange.Columns.Count If (first) Then first = False Else sql = sql & "," End If Set currentCell = srcSheet.Cells(currentRowIndex, currentColumnIndex) If IsNull(currentCell) Or Trim(currentCell.Value) = "" Then sql = sql & "null" ElseIf IsNumeric(currentCell.Value) Then sql = sql & currentCell.Value Else sql = sql & "'" & currentCell.Value & "'" End If Next sql = sql & ");" newbook.ActiveSheet.Cells(currentRowIndex - 1, 1).Value = sql Next End Sub #amazon2(468x60) EOF

表示オプション

横に並べて表示:
変化行の前後のみ表示: