Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/09/2011, 15h12   #1
Membre du Club
 
Inscription : septembre 2008
Messages : 106
Détails du profil
Informations personnelles :
Âge : 42
Localisation : France

Informations forums :
Inscription : septembre 2008
Messages : 106
Points : 54
Points : 54
Par défaut Créer un table en vba

Bonjour le forum

Je suis à la recherche d'une solution car mon code vba ne fonction pas
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 
Sub Commande56_Click()
Dim Bad
    Dim db As DAO.Database
    Dim tdf As DAO.TableDef
 
For ii = 1 To 12
        E = "Nomdelatable" & Format(DateSerial(Year(Now), ii, 1), "mmmm")
                strSQL = "CREATE TABLE " & E & " "
                Call DoCmd.RunSQL(strSQL)
For i = 1 To 31
 
                    Set db = CurrentDb()
                    Set tdf = db.TableDefs(E)
                    Badg = "Jour" & i
 
                    'Create
                        tdf.Fields.Append tdf.CreateField(E, dbText, 55)
 
                        tdf!& Badg. Properties.Append _
                        tdf.CreateProperty("DisplayControl", dbInteger, acComboBox)
 
                        tdf!& Badg.Properties.Append _
                        tdf.CreateProperty("RowSourceType", dbText, "Table/Query")
 
                        tdf!& Badg.Properties.Append _
                        tdf.CreateProperty("RowSource", dbText, "R_requete")
 
 
 
Next i
Next ii
    Set tdf = Nothing
    Set db = Nothing
 
End Sub
le problème et quand je veux changer les proprietes je bloque là
Code :
1
2
 
tdf!& Badg.Properties.Append _
il refuse le "Badg"
si quelqu'un a un solution ou une autre idée je suis prener

david @+ merci
David1259 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/09/2011, 18h53   #2
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Tu peux essayer comme ça :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Dim db As DAO.Database
Dim tdf As DAO.TableDef
Dim fld As DAO.Field
Dim i As Long, ii As Long
Dim Badg As String
Dim E As String, strSQL As String
 
Set db = CurrentDb()
 
For ii = 1 To 12
    ' Crée table
    E = "Nomdelatable" & Format(DateSerial(Year(Now), ii, 1), "mmmm")
    strSQL = "CREATE TABLE " & E & " "
    Call DoCmd.RunSQL(strSQL)
    ' Référence table
    db.TableDefs.Refresh
    Set tdf = db.TableDefs(E)
    ' Ajoute les champs de la table
    For i = 1 To 31
        Badg = "Jour" & i
        ' Crée champ
        Set fld = tdf.CreateField(Badg, dbText, 55)
        ' Ajoute le champ
        tdf.Fields.Append fld
 
        ' Crée propriétés champ
        fld.Properties.Append _
            tdf.CreateProperty("DisplayControl", dbInteger, acComboBox)
 
        fld.Properties.Append _
             tdf.CreateProperty("RowSourceType", dbText, "Table/Query")
 
        fld.Properties.Append _
            tdf.CreateProperty("RowSource", dbText, "R_requete")
 
    Next i
 
Next ii
 
Set tdf = Nothing
Set db = Nothing
A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 13h52   #3
Membre du Club
 
Inscription : septembre 2008
Messages : 106
Détails du profil
Informations personnelles :
Âge : 42
Localisation : France

Informations forums :
Inscription : septembre 2008
Messages : 106
Points : 54
Points : 54
Bonjour LedZeppII et le forum

1 seul mot excellent

merci beaucoup
David1259 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h22.


 
 
 
 
Partenaires

Hébergement Web