[VBA] Encore un problème avec mon code

Fermé
kido87 Messages postés 39 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 29 juin 2007 - 14 juin 2007 à 13:39
kido87 Messages postés 39 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 29 juin 2007 - 18 juin 2007 à 15:13
Bonjour à tous. Voila j'ai un petit problème avec mon code. Il s'arrete au niveau de l'ouverture du classeur d'importation, il ne rentre dans la suite. Si quelqu'un pouvait m'aider.... voici mon code

  Sub Cmd_Importation_Click()
     On Error GoTo err
     
     Dim Num_agent As Integer 'AutoIncrement(pas de numéro d'agent)
     Dim Nom_agent As String 'Nom de l'agent
     Dim Num_projet As Integer 'AutoIncrement (pas de numéro de projet)
     Dim Semaine_realisation As String 'numéro de la semaine de réalisation
     Dim Metier As String 'Métier
     Dim Projet As String 'Nom du projet
     Dim Description As String 'description de l'activité réalisée
     Dim Tache As String 'Avancement (en pourcentage ou terminé)
     Dim Temps_passe As Integer 'Temps_passé sur le projet (en h)
                                                                                          
     Dim SQL As String 'Variable qui permet de créer une table
     Dim Text1 As String 'Variable qui va contenir le nom du fichier à importer
     Dim Text2 As String 'Variable qui va contenir l'emplacement du fichier à importer
     Dim Text3 As String 'Variable qui va contenir le nom de la table d'importation n°1
     Dim Text4 As String 'Variable qui va contenir le nom de la table d'importation n°2
     Dim NomFic As String 'Nom du fichier à importer
     Dim Pathfic As String 'Emplacement du fichier à importer
     Dim NomTable As String 'Nom de la table d'importation n°1
     Dim NomTable2 As String 'Nom de la table d'importation n°2
     Dim j As String 'Compteur
     Dim xls As Excel.Application 'Excel
     Dim Rsg As String 'Renseignement de la boite de dialogue, rentré par l'utilisateur
     Dim NomDuFichier 'Nom du fichier à importer (insertion des cellule Excel)
              
            
     NomDuFichier = InputBox("Entrez le nom du fichier à importer ")
     If (NomDuFichier <> "") Then
     MsgBox NomDuFichier
     Else
     réponse = MsgBox("Nom du fichier à importer manquant", vbExclamation + vbOKOnly, "Attention !!!")
     Exit Sub
     End If
             
     Set Dbs = CurrentDb 'CurrentDb ==> Suivi_activites
     Set NomDuFichier = CreateObject("Excel.application")
     
     
     'Initialisation du fichier a Importer
     Rsg = NomDuFichier
     Text1 = Rsg
     ClasseurXLS = Rsg
     If (Text1 <> "") Then
     NomFic = Text1
     NomFic = NomFic & ".xls"
     Else
     réponse = MsgBox("Nom du fichier à importer manquant", vbExclamation + vbOKOnly, "Attention !!!")
     Exit Sub
     End If
         
     
     'Initialisation Emplacement à importer
     Rsg = InputBox("Entrez l'emplacement à importer  : ")
     If (Rsg <> "") Then
     MsgBox Rsg
     End If
     Text2 = Rsg
     If (Text2 <> "") Then
     Pathfic = Text2
     Else
     réponse = MsgBox("Emplacement du fichier à importer manquant", vbExclamation + vbOKOnly, "Attention !!!")
     Exit Sub
     End If
     
     
     'Initialisation Nom de la table d'importation n°1
     Text3 = "Projets"
     If (Text3 <> "") Then
     NomTable = Text3
     Else
     réponse = MsgBox("Nom de la table d'importation manquant", vbExclamation + vbOKOnly, "Attention !!!")
     Exit Sub
     End If
     
     'Initialisation Nom de la table d'importation n°2
     Text4 = "Agents"
     If (Text4 <> "") Then
     NomTable2 = Text4
     Else
     réponse = MsgBox("Nom de la table d'importation n°2 manquant", vbExclamation + vbOKOnly, "Attention !!!")
     Exit Sub
     End If
     
     
     'Ouverture du classeur d'Importation
                                                                                                            
     NomDuFichier.Workbooks.Open Pathfic & NomFic
     MsgBox ("Le classeur d'importation est ouvert")
          
     'Creation des tables d'importation
     
     SQL = "create table " & NomTable & "(Num_projet integer, Semaine_realisation string, Metier string, Projet string, Description string, Tache string, Temps_passe integer)"
     Dbs.Execute SQL
     SQL = "create table " & NomTable2 & "(Num_agent integer, Nom_agent string, Num_projet integer)"
     Dbs.Execute SQL
     MsgBox ("Tables d'importation crées")
     
     j = 5 'on initialise j à 5 (Cellules vides avant la ligne 5)
     Do While NomDuFichier.Cells(j, 1) <> ""
     'Recuperations des données lignes par lignes
     Semaine_realistion = NomDuFichier.Cells(j, 3)
     Metier = NomDuFichier.Cells(j, 4)
     Projet = NomDuFichier.Cells(j, 5)
     Activite_realisee = NomDuFichier.Cells(j, 6)
     Temps_passe = NomDuFichier.Cells(j, 7)
     Avancement = NomDuFichier.Cells(j, 8)
     'Insertion des données dans la table
     SQL = "INSERT INTO NomTable (Num_projet, Semaine_realistion, Metier, Projet, Description, Tache, Temps_passe) values ('" & VNum_projet & "','" & VSemaine_realisation & "','" & VMetier & "','" & VProjet & "','" & VDescription & "','" & VTache & "','" & VTemps_passe & "');"
     Dbs.Execute SQL
     SQL = "INSERT INTO NomTable2 (Num_agent, Nom_agent, Num_projet) values ('" & VNum_agent & "','" & VNom_agent & "','" & VNum_projet & "');"
     Dbs.Execute SQL
     j = j + 1
     Loop
     
                                                                                          
    
     'Fermeture du classeur d'Importation
     NomDuFichier.Workbooks.Close
     MsgBox ("Le classeur d'importation est fermé")
     
     
     MsgBox (" Importation des données effectuée ")
     Exit Sub
     
err:
     NomDuFichier.Workbooks.Close
     End Sub


D'avance merci
++
A voir également:

5 réponses

kido87 Messages postés 39 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 29 juin 2007
15 juin 2007 à 15:19
... pas de réponses...
0
irem Messages postés 164 Date d'inscription mardi 22 mai 2007 Statut Membre Dernière intervention 9 octobre 2012 99
15 juin 2007 à 15:24
a mon avis, VBA n'accepte déjà pas les accents dans les noms de variables (réponse=)

c'est un début

Irem
0
kido87 Messages postés 39 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 29 juin 2007
15 juin 2007 à 16:09
Non le problème n'est pas la mon réponse= marche très bien. C'est au niveau de l'ouverture du classeur d'imporatation:

'Ouverture du classeur d'Importation

NomDuFichier.Workbooks.Open Pathfic & NomFic
MsgBox ("Le classeur d'importation est ouvert")

merci de ta réponse^^
0
irem Messages postés 164 Date d'inscription mardi 22 mai 2007 Statut Membre Dernière intervention 9 octobre 2012 99
15 juin 2007 à 18:15
as-tu vérifié le pathfic & nomfic dans le debugger (il ne manque pas par exemple de \)

Irem
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kido87 Messages postés 39 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 29 juin 2007
18 juin 2007 à 15:13
Non ça n'est pas ça, je viens de vérifier c'est bon. Donc voila!!!! merci de ta réponse!!!!!

Si vous avez une idée SVP!!!!!!!!!! merci de bien vouloir répondre

++
0