Well, this is not going to be fun. The only way I can think of to do this would be through VBA code. If I understand you correctly, I gather you have more than one record in the source table with data in all those pairs of fields. First, you will have to add another column to your destination table. Some sort of key to tie the records together.
Then, you will need to open both tables using the OpenRecordset. You will need to loop through each record in the source table, and then append six records (loop) to the destination. The following code is NOT going to work, but it will point you in a direction:
Public Function Transposetables()
Dim db1 As Database
Dim rst1 As Recordset
Dim db2 As Database
Dim rst2 As Recordset
Set db1 = CurrentDb
Set rst1 = db.OpenRecordset("select * from MyTable1"

Set db2 = CurrentDb
Set rst1 = db.OpenRecordset("select * from MyTable2"
rst1.MoveFirst
rst2.MoveFirst
Do While Not rst1.EOF
FOR I = 1 TO 6
rst2.AddNew
rst2!ID = SOME ID NUMBER????
rst2!topic = rst1.topic# <---- Need to figure
out how to
append the value
of your loop
counter here
rst2!avg = rst1.avg# <---- Need to figure
out how to
append the value
of your loop
counter here
rst2.Update
rst1.MoveNext
NEXT
Loop
rst1.close
rst2.close
End Function
Like I said, this will NOT work, but should kick you in the right direction. Or, maybe someone else will have a better idea.
Hope that helps...
Terry M. Hoey