Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'ut ilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevio us ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec s eek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemp les, si
vous savez où le trouver, ça m'aiderait certainement à mieux comp rendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de donn ées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la b ase
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Masque r le texte des messages précédents -
- Afficher le texte des messages précédents -
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!
Bonjour,
je cherche à travailler une base de donnée access avec excell. J'ut ilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevio us ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec s eek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemp les, si
vous savez où le trouver, ça m'aiderait certainement à mieux comp rendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de donn ées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la b ase
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Masque r le texte des messages précédents -
- Afficher le texte des messages précédents -
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'ut ilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevio us ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec s eek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemp les, si
vous savez où le trouver, ça m'aiderait certainement à mieux comp rendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de donn ées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la b ase
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Masque r le texte des messages précédents -
- Afficher le texte des messages précédents -
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!
Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Bonjour,
http://boisgontierjacques.free.fr/fichiers/jb-ExelAccess.zip
JB
On 1 août, 11:16, FFO wrote:Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
http://boisgontierjacques.free.fr/fichiers/jb-ExelAccess.zip
JB
On 1 août, 11:16, FFO <F...@discussions.microsoft.com> wrote:
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!
Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
http://boisgontierjacques.free.fr/fichiers/jb-ExelAccess.zip
JB
On 1 août, 11:16, FFO wrote:Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Merci JB, c'est assez utile comment fichier, une vraie bible! Faut que je
décortique tout ça et vois les temps de réponse sur un gros fichier ...
tu saurais aussi me dire à quoi correspondent les ! et Me?Bonjour,
http://boisgontierjacques.free.fr/fichiers/jb-ExelAccess.zip
JB
On 1 août, 11:16, FFO wrote:Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de donn ées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePr evious ou
MoveNext mais je n'arrive pas à cherche une donnée précise av ec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce suje t... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses e xemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de do nnées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Ma squer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte d es messages précédents -
- Afficher le texte des messages précédents -
Merci JB, c'est assez utile comment fichier, une vraie bible! Faut que je
décortique tout ça et vois les temps de réponse sur un gros fichier ...
tu saurais aussi me dire à quoi correspondent les ! et Me?
Bonjour,
http://boisgontierjacques.free.fr/fichiers/jb-ExelAccess.zip
JB
On 1 août, 11:16, FFO <F...@discussions.microsoft.com> wrote:
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de donn ées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!
Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePr evious ou
MoveNext mais je n'arrive pas à cherche une donnée précise av ec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce suje t... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses e xemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de do nnées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Ma squer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte d es messages précédents -
- Afficher le texte des messages précédents -
Merci JB, c'est assez utile comment fichier, une vraie bible! Faut que je
décortique tout ça et vois les temps de réponse sur un gros fichier ...
tu saurais aussi me dire à quoi correspondent les ! et Me?Bonjour,
http://boisgontierjacques.free.fr/fichiers/jb-ExelAccess.zip
JB
On 1 août, 11:16, FFO wrote:Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de donn ées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePr evious ou
MoveNext mais je n'arrive pas à cherche une donnée précise av ec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce suje t... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses e xemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de do nnées
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value- Ma squer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte d es messages précédents -
- Afficher le texte des messages précédents -
salut et merci ffo, c'est nouveau, il me dit que "reference1" n'est pas un
index de cette table.... pourtant c'est le nom de la colonne!
help!
Sinon j'ai essayé avec ce code, ça marche pas plus... Un problème avec ma bdd?
Sub cherche()
Dim code_emb As String
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
code_emb = "reference1 = MFM0504"
With matable
.FindFirst code_emb 'est-ce bien la bonne synthaxe?
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End SubSalut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
salut et merci ffo, c'est nouveau, il me dit que "reference1" n'est pas un
index de cette table.... pourtant c'est le nom de la colonne!
help!
Sinon j'ai essayé avec ce code, ça marche pas plus... Un problème avec ma bdd?
Sub cherche()
Dim code_emb As String
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
code_emb = "reference1 = MFM0504"
With matable
.FindFirst code_emb 'est-ce bien la bonne synthaxe?
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!
Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
salut et merci ffo, c'est nouveau, il me dit que "reference1" n'est pas un
index de cette table.... pourtant c'est le nom de la colonne!
help!
Sinon j'ai essayé avec ce code, ça marche pas plus... Un problème avec ma bdd?
Sub cherche()
Dim code_emb As String
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
code_emb = "reference1 = MFM0504"
With matable
.FindFirst code_emb 'est-ce bien la bonne synthaxe?
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End SubSalut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Rebonjours Nelson
Le code que je t'ai proposé fonctionne trés bien chez moi
As tu bien vérifié l'exactitude du nom de ton champ directement dans la
table de la base Access ??? (attention aux espaces éventuels en fin de
libellé)
Es tu certain du nom de ta table qui possède ce champ ???
As tu bien coché la référence Microsoft DAO Object Library (version la plus
récente) ???
Tu peux essayer de m'envoyer ta base Access pour que je procède à un essai :
http://www.cijoint.fr/index.php
Donnes moi le lien en retoursalut et merci ffo, c'est nouveau, il me dit que "reference1" n'est pas un
index de cette table.... pourtant c'est le nom de la colonne!
help!
Sinon j'ai essayé avec ce code, ça marche pas plus... Un problème avec ma bdd?
Sub cherche()
Dim code_emb As String
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
code_emb = "reference1 = MFM0504"
With matable
.FindFirst code_emb 'est-ce bien la bonne synthaxe?
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End SubSalut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Rebonjours Nelson
Le code que je t'ai proposé fonctionne trés bien chez moi
As tu bien vérifié l'exactitude du nom de ton champ directement dans la
table de la base Access ??? (attention aux espaces éventuels en fin de
libellé)
Es tu certain du nom de ta table qui possède ce champ ???
As tu bien coché la référence Microsoft DAO Object Library (version la plus
récente) ???
Tu peux essayer de m'envoyer ta base Access pour que je procède à un essai :
http://www.cijoint.fr/index.php
Donnes moi le lien en retour
salut et merci ffo, c'est nouveau, il me dit que "reference1" n'est pas un
index de cette table.... pourtant c'est le nom de la colonne!
help!
Sinon j'ai essayé avec ce code, ça marche pas plus... Un problème avec ma bdd?
Sub cherche()
Dim code_emb As String
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
code_emb = "reference1 = MFM0504"
With matable
.FindFirst code_emb 'est-ce bien la bonne synthaxe?
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Salut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!
Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
Rebonjours Nelson
Le code que je t'ai proposé fonctionne trés bien chez moi
As tu bien vérifié l'exactitude du nom de ton champ directement dans la
table de la base Access ??? (attention aux espaces éventuels en fin de
libellé)
Es tu certain du nom de ta table qui possède ce champ ???
As tu bien coché la référence Microsoft DAO Object Library (version la plus
récente) ???
Tu peux essayer de m'envoyer ta base Access pour que je procède à un essai :
http://www.cijoint.fr/index.php
Donnes moi le lien en retoursalut et merci ffo, c'est nouveau, il me dit que "reference1" n'est pas un
index de cette table.... pourtant c'est le nom de la colonne!
help!
Sinon j'ai essayé avec ce code, ça marche pas plus... Un problème avec ma bdd?
Sub cherche()
Dim code_emb As String
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
code_emb = "reference1 = MFM0504"
With matable
.FindFirst code_emb 'est-ce bien la bonne synthaxe?
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End SubSalut Nelson
Aprés avoir essayé ton code
La difficulté réside dans le fait que tu l'ai scindé en deux
Si tu regroupes les 2 morceaux ainsi :
Sub cherche()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value
End Sub
Celà fonctionne nettement mieux
Essaie et dis moi !!!!Bonjour,
je cherche à travailler une base de donnée access avec excell. J'utilise VBA
avec office 2003. J'arrive bien à avoir des données avec MovePrevious ou
MoveNext mais je n'arrive pas à cherche une donnée précise avec seek ou
findfirst. L'aide d'office est pas claire (synthaxe...) sur ce sujet... Je
mets les 2 principales macro que j'utilise. Un coup de main?
De plus l'aide fait appel à un fichier "Northwind.mdb" pour ses exemples, si
vous savez où le trouver, ça m'aiderait certainement à mieux comprendre..
Merci.
Private Sub Workbook_Open()
'Ouverture BDD
Set wrkJet = CreateWorkspace("JetWorkspace", "admin", _
"", dbUseJet)
Set dbsEssai = wrkJet.OpenDatabase("essai.mdb")
Set matable = dbsEssai.OpenRecordset("fiche_dcl")
End Sub
Sub cherche()
On Error Resume Next 'eviter message erreur si début ou fin de données
With matable
.Index = "reference1"
.Seek "=", "MFM0479" 'valeur dans la colonne reference1 de la base
access
If .NoMatch Then MsgBox "trouve pas"
End With
ActiveSheet.Range("B19") = matable.Fields("reference2").Value
ActiveSheet.Range("B20") = matable.Fields("reference3").Value
ActiveSheet.Range("B21") = matable.Fields("reference4").Value
ActiveSheet.Range("D17") = matable.Fields("reference5").Value