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 :

Sinon passer 6 lignes en VBA sur excel 2016


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2017
    Messages : 14
    Par défaut Sinon passer 6 lignes en VBA sur excel 2016
    Bonjour, bonjour,

    Alors voici une partie de mon programme:

    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
     <div style="margin-left:40px">   
        Dim bb As Worksheet
        Dim bn As Range
        Dim baa As Integer
        Sheets("ProductionParameters").Select
        Set bb = Worksheets("ProductionParameters")
        Set bn = bb.Rows(1).Find("Lampe N°2 (Mesure) - 1002", , xlValues, xlWhole)
        If bn Is Nothing Then Exit Sub
        baa = bn.Column
        Columns(baa).Select
        Selection.Copy
        Sheets("paramètres").Select
        Columns("AC:AC").Select
        ActiveSheet.Paste
     
        Sheets.Add After:=ActiveSheet
        Sheets("Feuil2").Select
        Sheets("Feuil2").Name = "x"
        Sheets("x").Select</div>

    La ligne suivante me pose problème, je voudrais qu'au lieu de sortir du sub le code saute quelque ligne afin d'arriver ici à la ligne 16 afin de continuer le programme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div style="margin-left:40px">    If bn Is Nothing Then Exit Sub</div>
    Merci d'avance pour votre aide

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Ta demande n'est pas claire mais je pense que ceci devrait faire ce que tu souhaites :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        If bn Is Nothing Then Set bn = bb.Cells(16, 1)

  3. #3
    Membre Expert Avatar de jerome.vaussenat
    Homme Profil pro
    Formateur Bureautique
    Inscrit en
    Janvier 2011
    Messages
    1 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur Bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 629
    Par défaut
    Salut Menhir,

    je pense que scuti veux dire passe à la ligne 16 de son code VBA. ET non à la ligne 16 de sa feuille de calcul.

    Mais je peux avoir mal compris ...

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2017
    Messages : 14
    Par défaut
    Citation Envoyé par jerome.vaussenat Voir le message
    Salut Menhir,

    je pense que scuti veux dire passe à la ligne 16 de son code VBA. ET non à la ligne 16 de sa feuille de calcul.

    Mais je peux avoir mal compris ...

    Oui c'est ça

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2017
    Messages : 14
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Ta demande n'est pas claire mais je pense que ceci devrait faire ce que tu souhaites :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        If bn Is Nothing Then Set bn = bb.Cells(16, 1)
    Bonjour menhir,

    Comme l'as dit Jérôme je voudrais passer à la ligne 16 de mon code VBA

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Dans ce cas, il faut utiliser la methode Goto
    avant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    If bn Is Nothing Then Exit Sub
        baa = bn.Column
        Columns(baa).Select
        Selection.Copy
        Sheets("paramètres").Select
        Columns("AC:AC").Select
        ActiveSheet.Paste
     
        Sheets.Add After:=ActiveSheet
    apres

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    If bn Is Nothing Then Goto SuiteForcee
        baa = bn.Column
        Columns(baa).Select
        Selection.Copy
        Sheets("paramètres").Select
        Columns("AC:AC").Select
        ActiveSheet.Paste
     SuiteForcee:
        Sheets.Add After:=ActiveSheet
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  7. #7
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Perso, je conseille d'éviter les GoTo.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        Dim bb As Worksheet
        Dim bn As Range
        Set bb = Worksheets("ProductionParameters")
        Set bn = bb.Rows(1).Find("Lampe N°2 (Mesure) - 1002", , xlValues, xlWhole)
     
        If Not bn Is Nothing Then bn.Column.Copy Sheets("paramètres").Columns("AC:AC")
     
        Sheets.Add After:=ActiveSheet
        Sheets("Feuil2").Select
        Sheets("Feuil2").Name = "x"

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2017
    Messages : 14
    Par défaut
    Merci pour ta réponse Jean Philippe André cela fonctionne

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

Discussions similaires

  1. [E-03] Besoin d'aide pour l'adaptation d'un script vba sur excel
    Par Tinien dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/02/2009, 11h17
  2. VBA sur excel tout simple
    Par JohnFidgeral dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/01/2007, 18h58
  3. Mot de passe VBA sur Excel ?
    Par ft035580 dans le forum Sécurité
    Réponses: 4
    Dernier message: 30/09/2006, 21h48
  4. [VBA-E]Executer fonction VBA sur Excel sans activer la macro
    Par marie10 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 19/01/2006, 14h34
  5. Envoi de mail via un macro vba sur excel
    Par momolamoto dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 30/12/2005, 18h51

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