voilà le code où j'en suis merci

:
Option Explicit
Option Base 1
Public ligne_cube As Integer
Public colonne_cube As Integer
Public type_cube As Integer
Public couleur_fond As Long
Public score As Integer
Public const NB_COLONNES = 7
Private Const NB_LIGNES = 10
Private Const MAX_COULEURS = 6
Private Const ABSENCE_CUBE = -1
Private Const TAILLE_ALIGNEMENT = 3
Private tableau_jeu(NB_LIGNES, NB_COLONNES)
Private tableau_alignements(NB_LIGNES, NB_COLONNES)
Public Sub init_tableau_jeu()
Dim Ligne As Integer
For Ligne = 1 To NB_LIGNES
For colonne = 1 To NB_COLONNES
tableau_jeu(Ligne, colonne) = ABSENCE_CUBE
Next colonne
Next Ligne
End Sub
Public Sub afficher_cube()
Dim num_cube As Integer
Dim couleur_cube As Long
' CALCUL NUMERO CONTROLE GRAPHIQUE
num_cube = (ligne_cube - 1) * NB_COLONNES + (colonne_cube - 1)
' LECTURE COULEUR D'AFFICHAGE
couleur_cube = Form2.Picturel(type_cube).BackColor
' AFFICHAGE CUBE SUR ECRAN
Form1.Picturel(num_cube).BackColor = couleur_cube
' MEMORISATION CUBE EN MEMOIRE
tableau_jeu(ligne_cube, colonne_cube) = type_cube
End Sub
Public Sub effacer_cube()
Dim num_cube As Integer
' CALCUL NUMERO CONTROLE GRAPHIQUE
num_cube = (ligne_cube - 1) * NB_COLONNES + colonne_cube - 1
' EFFACEMENT CUBE SUR ECRAN
Form1.Picture1(num_cube).BackColor = couleur_fond
' EFFACEMENT CUBE EN MEMOIRE
tableau_jeu(ligne_cube, colonne_cube) = ABSENCE_CUBE
End Sub
presence_cube = tableau_jeu(ligne_cube + 1, colonne_cube)
If presence_cube = ABSENCE_CUBE Then
effacer_cube
ligne_cube = ligne_cube + 1
afficher_cube
Else
apparition_nouveau_cube
End If
' TEST SI CUBE EN BAS DE L'ECRAN
If ligne_cube = NB_LIGNE Then
apparition_nouveau_cube
Exit Sub
End If
presence_cube = tableau_jeu(ligne_cube + 1, colonne_cube)
If presence_cube = ABSENCE_CUBE Then
effacer_cube
ligne_cube = ligne_cube + 1
afficher_cube
Else
apparition_nouveau_cube
End If