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

Macros et VBA Excel Discussion :

Fonction Sql "INSERT,UPDATE" en vba sur plusieurs lignes


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Fonction Sql "INSERT,UPDATE" en vba sur plusieurs lignes
    Bonjour à tous,

    voilà étant débutant en vb, je cherche à exécuter des fonction insert et update sur une plage donnée.

    Cependant, je dois écrire autant de fois la fonction range qu'il y a de lignes à insérer ou updater!

    Exemple de fonction que je veux faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub lignes()
     
        Range("AD2:AG2,AH2").Select
        Range("AH2").Activate
        Run "VB_Launch_request"
     
        Range("AD3:AG3,AH3").Select
        Range("AH3").Activate
        Run "VB_Launch_request"
     
    etc.......
     
    End Sub
    Ma question est comment faire pour qu'il le fasse autant de fois qu'il y a de lignes remplies?

    Merci d'avance.

  2. #2
    Membre régulier
    Homme Profil pro
    Développeur amateur VBA Excel
    Inscrit en
    Janvier 2013
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur amateur VBA Excel
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Janvier 2013
    Messages : 69
    Points : 79
    Points
    79
    Par défaut
    Essais donc ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub lignes()
    Dim i As Long
    For i = 2 To Cells(2, 30).End(xlDown).Row
    Range("AD" & i & ":AG" & i & ",AH" & i & "").Select
    Range("AH" & i & "").Activate
    Run "VB_Launch_request"
    Next i
     
    MsgBox "C'est finit !"
    End Sub

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup "Limace Hurlante", cela fonctionne!

    Quelle rapidité! Super forum qui partagent son savoir avec les débutants.

    Une petite dernière pour la route...

    La requête s’exécute temps que la cellule 30=AD n'est pas vide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For i = 2 To Cells(2, 30).End(xlDown).Row
    Je voudrais quelle le fasse tant que dans la colonne "W" on a la valeur 1 et quelle s'arrête si "W" a la valeur 0

    Cordialement

Discussions similaires

  1. [XL-2010] utilser un code VBa sur plusieurs lignes
    Par MatthieuT42 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/06/2015, 06h54
  2. Réponses: 11
    Dernier message: 13/12/2011, 17h41
  3. LINQ to SQL] Tracer les requêtes SQL d'Insert/Update/Delete
    Par annalady dans le forum Accès aux données
    Réponses: 5
    Dernier message: 30/07/2009, 10h17

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