Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


48451 / 76736 ←次へ | 前へ→

【33221】Re:シート1からシート2に対してグルー...
回答  小僧  - 06/1/5(木) 13:00 -

引用なし
パスワード
   ▼MoritaKさん、Hirofumi さん:
こんにちは。

>Accessの環境では「グループ化」集計を簡単に行えますけれど、

Access にお慣れでしたら、SQL で解決も可能ですね。

Sub SQLで()
Dim strSQL As String
Dim ADORS As Object
Dim ADOCon As Object
Dim i As Long

  On Error Resume Next
  
  Set ADOCon = CreateObject("ADODB.Connection")
    ADOCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
          "Data Source=" & ThisWorkbook.FullName & ";" & _
          "Extended Properties=Excel 8.0;"
    If Err.Number <> 0 Then MsgBox "ADO接続に失敗": Exit Sub
    
  On Error GoTo 0
      
  strSQL = "SELECT 年月日, 検疫所, 検疫サンプル名, " _
      & "Sum([24:00]) AS [24:00の合計], " _
      & "Sum([6:00]) AS [6:00の合計], " _
      & "Sum([12:00]) AS [12:00の合計], " _
      & "Sum([18:00]) AS [18:00の合計], " _
      & "Sum(計) AS 計の合計 " _
      & "From [Sheet1$] " _
      & "GROUP BY 年月日, 検疫所, 検疫サンプル名;"

  Set ADORS = ADOCon.Execute(strSQL)
  
    With Sheets("Sheet2")
      For i = 0 To ADORS.Fields.Count - 1
        .Cells(1, i + 1).Value = ADORS(i).Name
      Next
      .Range("A2").CopyFromRecordset ADORS
    End With
  ADORS.Close: Set ADORS = Nothing
  ADOCon.Close: Set ADOCon = Nothing
End Sub
0 hits

【33095】シート1からシート2に対してグループ化集計 MoritaK 06/1/2(月) 17:55 質問
【33096】Re:シート1からシート2に対してグルー... kobasan 06/1/2(月) 19:02 発言
【33098】Re:シート1からシート2に対してグループ... Hirofumi 06/1/2(月) 19:57 回答
【33181】Re:シート1からシート2に対してグループ... MoritaK 06/1/4(水) 17:41 質問
【33182】Re:シート1からシート2に対してグループ... Hirofumi 06/1/4(水) 17:59 発言
【33190】Re:シート1からシート2に対してグループ... MoritaK 06/1/4(水) 19:34 質問
【33199】Re:シート1からシート2に対してグループ... Hirofumi 06/1/4(水) 20:55 回答
【33221】Re:シート1からシート2に対してグルー... 小僧 06/1/5(木) 13:00 回答
【33253】Re:シート1からシート2に対してグルー... MoritaK 06/1/5(木) 22:08 お礼

48451 / 76736 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free