2016-12-21 6 views
0

私は、セミコロン(;)で区切られた時間ブロックを格納する列を持つ表を持っています。私は区切り文字列を含む列の各項目に重複行を作成します。

enter image description here

私に知らせてくださいたびにブロックの行を作成したいと思います

enter image description here

を与えられ、例えば、それぞれの時間ブロックごとに行を作成したいですこれがAccessで可能ならば。

編集

私はこのクエリに

SELECT * INTO ImportedData 
FROM (
    SELECT [SourceData].[Time block], [SourceData].[Work History Id],[SourceData].[Operation Code] 
    FROM SourceData 
    WHERE InStr([SourceData].[Time block], ';') = 0 
    UNION ALL 
    SELECT Left([SourceData].[Time block], InStr([SourceData].[Time block], ';') - 1),[SourceData].[Work History Id], [SourceData].[Operation Code] 
    FROM SourceData 
    WHERE InStr([SourceData].[Time block], ';') > 0 
    UNION ALL 
    SELECT Mid([SourceData].[Time block], InStr([SourceData].[Time block], ';') + 1), [SourceData].[Work History Id], [SourceData].[Operation Code] 
    FROM SourceData 
    WHERE InStr([SourceData].[Time block], ';') > 0) AS CleanedUp; 

を使用してみましたし、私も運と、このVBAコードを試してみました。ここで答えを見つけ

Public Sub addToTable() 
    Dim rstObj As DAO.Recordset, dbObj As DAO.Database 
    Dim InsertSQL As String 
    Set dbObj = CurrentDb() 
    Set rstObj = dbObj.OpenRecordset("Query1") 
    Do While Not rstObj.EOF 
     Dim memArr() As String 
     memArr = Split(rstObj.Fields("Time block"), ",") 
     For i = 0 To UBound(memArr) 
      InsertSQL = "SELECT*INTO ImportedData(Time block, Work History ID) VALUES(""" & rstObj.Fields("Time block") & """, """ & memArr(i) & """)" 
      DoCmd.RunSQL (InsertSQL) 
     Next 
     rstObj.MoveNext 
    Loop 
End Sub 
+0

この質問はなぜ顕著でしたか? – user3667159

+0

"なぜこの質問は顕著でしたか?" - おそらく、あなたは "それは可能ですか?"あなたが調査したものや自分自身で試したことを示すことなく、 [メタのこの回答](http://meta.stackoverflow.com/a/269359/2144390)を見てください。 –

+0

私は監視についてお詫び申し上げます、私は別の近づいたクエリを使用して試しましたが、これまでのところこれは多少うまく動作する唯一のものです、提供されたSQLは正しく動作しません。大いに感謝する – user3667159

答えて

関連する問題