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 :

Code VBA à modifier


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Novembre 2014
    Messages : 37
    Par défaut Code VBA à modifier
    Bonjour

    je suis sur un mini projet de gestion de remise de bordereau, je suis bloqué au niveau de la numérotation, avec ce code tout va bien mais je veux avoir une numérotation pour chaque société choisie ( dans mon cas c'est combobox2 ) . ex si combobox2 contient le nom la société (MOMO) la numérotation dans la feuille NUMERO est dans la collonne A avec le nom de la société en B si combobox2 contient le nom la société (LOLO) la numérotation dans la feuille NUMERO est dans la collonne C avec le nom de la société en D. et ainsi de suite...

    voici mon code :




    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    Option Explicit
     
        Private Sub ComboBox1_DropButtonClick()
          Dim Rng As Range, f As Worksheet, MaxNum As Long, Numerosuivant As Long
          ' si la combo est vide, on sort
         If Me.ComboBox1.Value = "" Then Exit Sub
          ' Initialiser MaxNum
         MaxNum = 0
          ' Définir une variable objet pour la feuille source
         Set f = Sheets("NUMERO")
          ' Pour chaque cellule de la colonne
         For Each Rng In f.Range("A2:A" & f.Range("A" & Rows.Count).End(xlUp).Row)
            If Rng.Value <> "" Then
              If CInt(Left(Rng, 4)) = CInt(Me.ComboBox1) Then
                If Rng.Value > MaxNum Then MaxNum = Rng.Value
              End If
            End If
          Next Rng
          ' Incrémenter de 1 pour le numéro suivant
         Numerosuivant = MaxNum + 1
          ' Si le dernier numéro trouvé est bien un numéro de dossier
         If MaxNum > 19000000 Then
            TextBox1.Value = Numerosuivant
          Else
            ' Sinon l'inscrire avec le bon format
           TextBox1.Value = Me.ComboBox1 & Format(Numerosuivant, "0000")
          End If
        End Sub
     
        Private Sub CommandButton1_Click()
          Unload Me
        End Sub
     
        Private Sub Cbn_Enregistrer_Click()
          Dim NLig As Long, NumDossier As Long, cell As Range
          ' Avec la feuille
         With Sheets("NUMERO")
            ' Récupérer le numéro de la prochaine ligne vide
           NLig = .Range("A" & Rows.Count).End(xlUp).Row + 1
            ' Poser la question
           If MsgBox("Voulez-vous Valider cet enregistrement? " & vbTab, vbYesNo) = vbYes Then
              NumDossier = Me.TextBox1.Value
              Set cell = .Range("A2:A65655").Find(Val(TextBox1), lookat:=xlWhole)
                        If Not cell Is Nothing Then
                            MsgBox ("Ce numéro a été déja utilisé;" & Chr(10) & _
                                            " Choisissez un autre numéro !")
              .Range("A" & NLig).Value = ""
              Else
              .Range("A" & NLig).Value = NumDossier
              ' Trier les numéros
     
            End If
          End If
          End With
          With Worksheets("REMISE")
        .Range("G2") = NumDossier
        UserForm3.TextBox22.Value = Range("G2").Value
        End With
          Unload Me
        End Sub
     
     
        '---Alimente la liste déroulante année budgétaire-----
        Private Sub UserForm_Initialize()
          Dim Lig5 As Integer
          For Lig5 = 1899 To 2999
            Me.ComboBox1.AddItem Lig5
          Next Lig5
          Me.ComboBox1 = Year(Now)
          Call ComboBox1_DropButtonClick
          'Enlever le cadre de l'UF
              OteTitleBarre Me.Caption, False 'True pour le remettre
     
        End Sub
    Merci à vous

  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
    Citation Envoyé par maximob Voir le message
    je veux avoir une numérotation pour chaque société choisie ( dans mon cas c'est combobox2 ) . ex si combobox2 contient le nom la société (MOMO) la numérotation dans la feuille NUMERO est dans la collonne A avec le nom de la société en B si combobox2 contient le nom la société (LOLO) la numérotation dans la feuille NUMERO est dans la collonne C avec le nom de la société en D. et ainsi de suite...
    On ne peut pas créer un code avec des exemple. Il faut une règle générale.

    Quelle est la règle liant le nom d'une société à une colonne ?

  3. #3
    Membre actif
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Novembre 2014
    Messages : 37
    Par défaut
    Merci pour votre temps.

    j'ai donné seulement un exemple car le projet contient des infos confidentiels liés à mon travail, donc ....

    je vais vous aider un peu pour m'aider


    REM V2.xlsm

  4. #4
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Bonjour,

    juste en indiquant le nom de la société en entête de colonne …

    ___________________________________________________________________________________________________________
    Je suis Paris, Egypte, Stockholm, London, Istanbul, Berlin, Nice, Bruxelles, Charlie, …

  5. #5
    Membre actif
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Novembre 2014
    Messages : 37
    Par défaut
    Re

    je veux avoir devant chaque numéro en colonne A le nom de la société en colonne B. comme ça j'aurais une continuité de numéros en A avec plusieurs sociétés en B.

  6. #6
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Par défaut
    bonjour,

    Nom : Capture.PNG
Affichages : 131
Taille : 8,5 Ko
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With Worksheets("REMISE")
        .Range("G2").value = NumDossier
        UserForm3.TextBox2.Value = .Range("G2").Value
        End With
    HORIZONTAL
    je veux avoir une numérotation pour chaque société choisie ( dans mon cas c'est combobox2 ) . ex si combobox2 contient le nom la société (MOMO) la numérotation dans la feuille NUMERO est dans la collonne A avec le nom de la société en B si combobox2 contient le nom la société (LOLO) la numérotation dans la feuille NUMERO est dans la collonne C avec le nom de la société en D. et ainsi de suite...
    VERTICAL
    je veux avoir devant chaque numéro en colonne A le nom de la société en colonne B. comme ça j'aurais une continuité de numéros en A avec plusieurs sociétés en B.

    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  7. #7
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Citation Envoyé par maximob Voir le message
    je veux avoir devant chaque numéro en colonne A le nom de la société en colonne B.
    Une feuille bien conçue utilisera exactement le contraire ‼
    Afin de pouvoir utiliser une simple fonction de feuille de calculs comme RECHERCHEV …

  8. #8
    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
    Citation Envoyé par maximob Voir le message
    j'ai donné seulement un exemple car le projet contient des infos confidentiels liés à mon travail, donc ....

    je vais vous aider un peu pour m'aider

    REM V2.xlsm
    Comme beaucoup d'autres participants de ce forum, je n'ouvre pas les pièces jointes, surtout celles pouvant contenir des macros, entre autre pour les raisons expliquées ici.
    https://www.developpez.net/forums/d8...s-discussions/

    Si tu ne peux pas expliquer ce que tu souhaites par une règle précise et exhaustive, il n'est pas possible de t'expliquer comment le réaliser.

  9. #9
    Membre actif
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Novembre 2014
    Messages : 37
    Par défaut
    ok, je vais modifier mon fichier en créant une base de données dans une feuille séparée.

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

Discussions similaires

  1. [XL-2003] Code VBA à modifier pour voir colonne A
    Par Un Internaute dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/05/2015, 09h09
  2. Code VBA qui modifie du Code VBA ?
    Par tictactoc dans le forum Excel
    Réponses: 2
    Dernier message: 30/07/2009, 09h43
  3. Code VBA uniquement si cellule modifiée
    Par tictactoc dans le forum Excel
    Réponses: 1
    Dernier message: 12/06/2009, 17h29
  4. Modifier Code VBA avec macro
    Par yadla dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/08/2007, 11h26
  5. Modifier le mdw de sécurité avec du code vba?
    Par Hydex dans le forum Sécurité
    Réponses: 6
    Dernier message: 07/07/2007, 18h06

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