Bonjour,
Je rencontre 2 problèmes dans mon code.
J'ai un formulaire ou l'on saisie des infos sur un projet puis lorsqu'on clic sur le bouton un fenêtre parcourir s'ouvre pour chercher le fichier excel nécessaire à l'importation des données.
Jusque ici tout va bien.
Dans se fichier excel j'ai bcp de colonne (30 environ) dont les données vont s'enregistrer dans plusieurs table.
L'une de mes tables ("DATA") reçoit 6 valeurs:
Unite, PU, Qte, peraleas, Remarque et Offreur.(le num auto s'enregistre automatiquement).
Mon premier problème viens de la variable qui reçoit la valeur pour le champs Peraleas (qui est réel double en pourcentage).
La variable s'appel "SAV".
Lorsque je l'a déclare en double ca ne marche pas alors que lorsque je ne l'a déclare pas ca marche.
Voici mon code:
Je suis obligé de transformer les virgules d'excel en point pour que ca enregistre dans access.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SAV = xlApp.Workbooks(strFilename).sheets("Feuil1").Cells(i, "Z") SAV = Replace(SAV, ",", ".")
Lorsque "SAV" est déclaré en double j'ai le message d'erreur imcompatibilité de type alors que lorsque je ne la déclare pas ca marche.
Comment dois-je déclarer "SAV"?
Mon second problème viens de mon INSERT INTO.
SI mes variables "RQ" ou "Offre" (respectivement pour les champs "Remarque" et "Offreur") sont null (càd qui ne sont pas renseigné dans Excel) ca ne s'enregistre pas alors que pour ses champs le null n'est pas interdit dans ma table.
Voici mon code:
Pouvez vous m'aider pour m'expliquer comment je peux enregistrer dans la table même si certain champs sont null.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 sSQL = "INSERT INTO [DATA] ([Unite], [PU], [Qte],[Peraleas],[Remarque],[Offreur]) VALUES ('" & unite & "'," & Pu & "," & Qte & "," & SAV & ",'" & RQ & "','" & Offre & "')" DoCmd.RunSQL (sSQL)
Merci
Partager