erreur 9 : l'indice n'appartient pas à sélection !!!!!!!!!!!!!!!!!!!

erreur 9 : l'indice n'appartient pas à sélection !!!!!!!!!!!!!!!!!!! - VB/VBA/VBS - Programmation

Marsh Posté le 01-12-2007 à 17:29:02    

bonjour j'ai un pb avec mon projet.  
Je cherche à importer des données d'un fichier .csv pour les stocker dans un tableau tab_tache, à l'aide d'une sub. Lorsque j'affiche une msgbox à l'intérieur de celle-ci, je vois bien que les données sont stockées, or lorque je fais appel à ce tableau dans ma sub affichage, le message d'erreur (erreur 9 : l'indice n'appartient pas à la sélection) apparait à ce niveau :  
 
        For i = 1 To UBound(tab_tache)
 
en plus, ça indique que i=0 et tab_tache=nothing.
J'ai vérifié plein de fois mon code et je ne vois rien du tout.
Pourriez-vous m'aider.
Merci beaucoup
 
Pour vous repérer, voici mon code et encore merci :  
 
Public Sub Mise_en_place_tache_obligatoire()
    Dim i As Integer
    Dim comp As String
    Dim Atelier As String
    Dim tech As String
    Dim nb_heure As Integer
    Dim j As Integer
    Dim heure As Integer
    Dim sat As Integer
    Dim jour As Integer
    Dim nl As Integer
    Dim nc As Integer
     
    Workbooks("Classeur1.xlsm" ).Activate
    Worksheets("Planing" ).Activate
 
        For i = 1 To UBound(tab_tache)
        'On va balayer sur tout le tableau tache
        ' par soucis de simplification d'écriture, on va affecter :
         
            comp = tab_tache(i).Composant
            Atelier = tab_tache(i).Atelier
            tech = tab_tache(i).Technicien
            jour = val(Mid(tab_tache(i).Date_debut, 1, 1))
             
            'On va regarder sur combien d'heures s'étale la tache
            nb_heure = val(tab_tache(i).Date_fin) - val(tab_tache(i).Date_debut)
             
               For j = 1 To UBound(tab_tache(i).Sat_conc)
                        sat = détermination_position(tab_tache(i).Sat_conc(j))
                        'On affichera uniquement les taches existantes bien évidemment, d'où la condition
                     If tab_tache(i).Sat_conc(j) <> "" Then
                        nl = Nombre_ligne_a_ajouter(tab_tache(i).Date_debut)
                        nc = Nombre_colonne_a_ajouter(tab_tache(i).Sat_conc(j))
                        Range(Cells(2 + nl, 3 + nc), Cells(2 + nl + (2 * nb_heure - 1), 3 + nc)).Select
                        'On selectionne toutes les cellules correspondant à l'affichage pour les faire fusionner
                        'C'est alors qu'interviennent les petites fonctions précédentes, permettant de se déplacer à partir
                        'de la cellule
                        Fusion   'On fusionne donc toutes les cellules concernées par cette tache, il s'agit ensuite de faire tout ce
                                 'tout ce qui touche à l'affichage, on écrit des commentaires dans les cellules
                                 'comme le composant assemblé, le technicien et l'atelier utilisé
                                 
                        Cells(2 + nl, 3 + nc).Value = " Mise en place du composant " & comp & " par le technicien " & tech & " dans l'atelier " & Atelier
                        Cells(2 + nl, 3 + nc).Interior.Color = vbRed
                        Cells(2 + nl, 3 + nc).AddComment
                        Cells(2 + nl, 3 + nc).Comment.Visible = False
                        Cells(2 + nl, 3 + nc).Comment.Text Text:= _
                        "Ta" & Mid(comp, 2, Len(comp) - 1) & Chr(10) & comp & Chr(10) & tech & Chr(10) & Atelier
                    End If
             Next j
    Next i
    'MsgBox Nombre_ligne_a_ajouter(tab_tache(1).Date_debut, "affichage" )
    'MsgBox Nombre_colonne_a_ajouter(tab_tache(1).Sat_conc(5))
    'For h = 5 To 8
    'Next h
End Sub

Reply

Marsh Posté le 01-12-2007 à 17:29:02   

Reply

Marsh Posté le 01-12-2007 à 17:34:49    

Bonsoir,
Ben oui si tab_tache = nothing c'est normal que i = 0
Ya pas de Dim, pas de param... il est défini ou ton tab_tache ?  
A+

Reply

Marsh Posté le 01-12-2007 à 17:53:57    

Non mais tout est défini convenablement avant, mais si tu veux je peux t'ajouter tout ça?

Reply

Marsh Posté le 03-12-2007 à 09:32:32    

Un tableau qui aurait pour valeur Nothing ? hum...
Ça ressemble plutôt à un objet ça.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed