IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Compléter un champ d'une table suite à l'importation [AC-2010]


Sujet :

Access

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 80
    Points : 63
    Points
    63
    Par défaut Compléter un champ d'une table suite à l'importation
    Bonjour,

    Je suis en face d'un problème délicat.
    Au faite, j'importe un fichier Excel dans une table Access. Il n'y a que deux champs : un champ qui contient des données numériques et un autre avec des données en format Date.
    Juste après l'importation, si dans le champ Date il y a des cellules vides (dans la table Access), j'aimerai les compléter toutes d'un coup avec une boite de dialogue. Donc, ouvrir une boite de dialogue qui demande de compléter tous les vides du champ Date. Voici le code que j'ai essayé mais il marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "import", "C:\.....xlsx", False, "Liste$A1:B50000"
     
      'Si des dates sont non servies, ouvrir boîte de dialogue pour demander une date limite qui sera affectée à tous les vides
        Dim valeur_date
        Dim date_limite
     
        valeur_date = CurrentDb.OpenRecordset("select count(F2) FROM import").Fields(0).Value
     
        For i = 1 To valeur_date
            date_limite = CurrentDb.OpenRecordset("select F2 FROM import").Fields(0).Value
            If IsNull (date_limite) Then MsgBox ....  Else MsgBox ...... 
        Next
    C'est dans les Msgbox que je bloque.


    Merci d'avance de votre aide.

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Plutôt un code du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Dim nbrenr As Integer
    Dim strsql As String
    Dim datemaj As Date
     
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "import", "C:\.....xlsx", False, "Liste$A1:B50000"
     
    'vérifier s'il y a des dates vides ou null ?
    Debug.Print DCount("*", "[import]", "IsNull([valeur_date]) or IsEmpty([valeur_date])")
    nbrenr = DCount("*", "[import]", "IsNull([valeur_date]) or IsEmpty([valeur_date])")
     
    'Récupérer la date de mise à jour
    datemaj = InputBox("donner la date pour la mise à jour !")
     
    If IsDate(datemaj) And Not IsNull(datemaj) Then
        'Mette à jour les dates
        If nbrenr > 0 Then
            strsql = " UPDATE [import] SET [import].[valeur_date] = #" & Format(datemaj, "yyyy/mm/dd") & "#" _
                    & " WHERE  IsNull([valeur_date]) OR IsEmpty([valeur_date])"
        Debug.Print strsql
            CurrentDb.Execute strsql, dbFailOnError
        End If
    Else
        MsgBox "la valeur saisie n'est pas conforme !"
    End If
    Au fait, mets ton code entre BALISES pour que ça soit lisible dans le forum : Tu sélectionnes ton code et tu appuies sur la balise code #.

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 80
    Points : 63
    Points
    63
    Par défaut
    Merci de voter réponse madefemere,
    Votre code marche nickel ^^.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Désolé pour le code, je ne savais pas pour les balises.
    (un petit test)

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Tu peux encore corriger ton premier message

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 22/06/2012, 16h17
  2. [Requête/SQL] Compléter les champs d'une table
    Par arn.oo dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 24/04/2007, 13h57
  3. [MySQL] Supprimer les informations des champs dans une table (suite)
    Par snakejl dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 26/05/2006, 15h37
  4. Ordre des champs dans une table
    Par patapetz dans le forum Outils
    Réponses: 5
    Dernier message: 30/07/2003, 06h53
  5. Récupération des noms de champs d'une table
    Par Battomura dans le forum SQL
    Réponses: 2
    Dernier message: 24/03/2003, 10h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo