Hola.
En ese caso yo tendría tres tablas: jugadores, soportemultijugador y jugadores_sm
En jugadores, los campos: id, nombre, etc.
En soportemultijugador: id, descripción, etc.
en jugadores_sm: id_jugador, id_soportemj
Luego:
'Cuando cargo el ListView pongo el id del registro de la tabla soportemultijugador en el Tag del item del ListView.
Dim strSql as String
For i = 1 to ListView1.Listitems.Count
If ListView1.Listitems(i).Checked = True then
strSql = strSql & "(" & IdDelJugador & ", " & ListView1.Listitems(i).Tag & "), "
End If
Next i
strSql = mid$(strSql, 1, len(strSql) - 2) 'Para eliminar la coma y el espacio del final
Dim Tabla as ADODB.Recordset
Set Tabla = New ADODB.Recordset
Tabla.Cursorlocation = adUseClient
Tabla.Open "INSERT INTO jugadores_sm (id_jugador, id_soportemj) VALUES (" & strSql & ")",Base, AdOpenStatic, AdLockOptimistic
set Tabla = Nothing
No lo probé, por lo que a lo mejor tiene algún error, pero es para que veas cómo lo hago.
Aclaro que esto no es un procedimiento ortodoxo, porque he aprendido por mi cuenta y soy bastante principiante. Seguramente quienes responden habitualmente en este foro, que son unos monstruos y saben muchísimo, te den la solución correcta.
Muchas gracias.