Soyez le premier à donner votre avis sur cette source.
Snippet vu 35 443 fois - Téléchargée 53 fois
Public ClasseurXLS As Object Private Sub Cmd_Importation_Click() Dim PathFic As String Dim NomFic As String Dim NomFicXLS As String Dim NomTable As String Dim iNom_emp As String Dim iCommentaires As String Dim iDateJ As Date Dim iNum_affaire As Integer Dim iNum_phase As Integer Dim i As Integer Dim iNb_heures As Integer Dim sql As String Set dbs = CurrentDb Set ClasseurXLS = CreateObject("Excel.application") 'Initialisation Nom du fichier à importer If (Text1.Value <> "") Then NomFic = Text1 NomFic = NomFic & ".xls" Else réponse = MsgBox("Nom du fichier à importer manquant", vbExclamation + vbOKOnly, "Attention !!!") Exit Sub End If 'Initialisation Emplacement du fichier à importer If (Text2.Value <> "") 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 If (Text3.Value <> "") Then NomTable = Text3 Else réponse = MsgBox("Nom de la table d'importation manquant", vbExclamation + vbOKOnly, "Attention !!!") Exit Sub End If 'Ouverture du classeur d'importation ClasseurXLS.Workbooks.Open PathFic & NomFic 'Creation d'une table d'importation sql = "create table " & NomTable & "(Nom_Emp string, DateJ date, Num_affaire integer, Num_phase integer, Nb_heures integer, Commentaire string)" dbs.Execute sql i = 2 Do While ClasseurXLS.cells(i, 1) <> "" 'Recuperation des données lignes par lignes iNom_emp = ClasseurXLS.cells(i, 1) iDateJ = ClasseurXLS.cells(i, 2) iNum_affaire = ClasseurXLS.cells(i, 3) iNum_phase = ClasseurXLS.cells(i, 4) iNb_heures = ClasseurXLS.cells(i, 5) iCommentaires = ClasseurXLS.cells(i, 6) 'Insertion des données dans la table sql = "INSERT INTO Intervient_emp (Num_emp, DateJ, Num_affaire, Num_phase, Nb_heures) values ('" & VNum_emp & "','" & VDateJ & "', '" & VNum_affaire & "' , '" & VNum_phase & "', '" & VNb_heures & "');" dbs.Execute sql i = i + 1 Loop 'Fermeture du classeur d'importation ClasseurXLS.Workbooks.Close MsgBox ("Importation des données effectuée") End Sub
17 nov. 2011 à 10:34
Quoi faire? voici mon code:
Option Compare Database
Private Sub impotation_du_fichier_Click()
Dim PathFic As String
Dim NomFic As String
Dim NomFicXLS As String
Dim NomTable As String
Dim code_article As Integer
Dim libelle_article As String
Dim prix_vente As Integer
Dim prix_achat As Integer
Dim stock As Integer
Dim i As Integer
Dim sql As String
Set dbs = CurrentDb
Set ClasseurXLS = CreateObject("Excel.application")
'Initialisation Nom du fichier à importer
If (Text1.Value <> "") Then
NomFic = Text1
NomFic = NomFic & ".xlsx"
'NomFic = "tablesStock.xlsx"
Else
réponse = MsgBox("Nom du fichier à importer manquant", vbExclamation + vbOKOnly, "Attention !!!")
Exit Sub
End If
'Initialisation Emplacement du fichier à importer
If (Text2.Value <> "") 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
If (Text3.Value <> "") Then
NomTable = Text3
Else
réponse = MsgBox("Nom de la table d'importation manquant", vbExclamation + vbOKOnly, "Attention !!!")
Exit Sub
End If
'Ouverture du classeur d'importation
ClasseurXLS.Workbooks.Open PathFic & NomFic
'Creation d'une table d'importation
sql = "CREATE TABLE table_provisoire(icodearticle integer, ilibellearticle string, iprixv integer, iprixacht integer, istock integer)"
dbs.Execute sql
i = 2
Do While ClasseurXLS.Cells(i, 1) <> ""
'Recuperation des données lignes par lignes
code_article = ClasseurXLS.Cells(i, 1)
libelle_article = ClasseurXLS.Cells(i, 2)
prix_vente = ClasseurXLS.Cells(i, 3)
prix_achat = ClasseurXLS.Cells(i, 4)
stock = ClasseurXLS.Cells(i, 5)
'Insertion des données dans la table
sql = "INSERT INTO TableS (code_article, libelle_article, prix_vente, prix_achat, stock) values ('" & Vcodearticle & "','" & VLibelle & "', '" & VprixVente & "' , '" & Vprixacht & "', '" & Vstock & "');"
dbs.Execute sql
i = i + 1
Loop
'Fermeture du classeur d'importation
ClasseurXLS.Workbooks.Close
MsgBox ("Importation des données effectuée")
End Sub
18 juin 2011 à 01:26
j'ai crée tte ma base de donnée avec les clé primaire et les relation
et dans l'une des table je veux importer une 3 colonne de excel vers le 3 colonne de meme champ sous access
avec une mise a jour des donnée sous access a chaque fois que cela se fai sous excel
24 juil. 2009 à 09:56
8 mai 2008 à 15:56
4 juil. 2007 à 11:23
If (Text1.Value <> "") Then
NomFic = Text1
NomFic = NomFic & ".xls"
Else
réponse = MsgBox("Nom du fichier à importer manquant", vbExclamation + vbOKOnly, "Attention !!!")
Exit Sub
End If
par
NomFic = "Agriculture.xls"
vu que ton nom est en dur...
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.