Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Nombre limité de Macro dans un fichier Excel

  • Initiateur de la discussion Initiateur de la discussion Someone
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Someone

XLDnaute Nouveau
Bonjour,

J'aurais voulu savoir combien de macros peut supporter un fichier Excel.
Est ce qu'il y a un nombre limité d'enregistrement ?

Pour informations, j'ai un tableau d'une centaine de ligne pour lesquelles, j'ai inséré un bouton sur chacunes avec une macro répétée par le nombre de lignes existantes (Je sais c'est peut être lourd comme programmation). Ne sachant pas si c'est possible de faire une mise en forme conditionnelle pour qu'une seul macro puisse reconnaitre la position du bouton et ainsi sélectionner les données sur cette même ligne.

Merci d'avance
 
Re : Nombre limité de Macro dans un fichier Excel

Bonjour à tous,

et pourquoi ne pas faire une macro évènementielle qui se déclenche par un double-clic ou un clic-droit sur les cellules concernées

à+
Philippe
 
Re : Nombre limité de Macro dans un fichier Excel

Re,

Alors cela devrait te donner la cellule de rattachement du bouton

Code:
Dim Cellule as range
Set Cellule =Sheets("LaFeuille").Shapes(Application.Caller).TopLeftCell

Où 'LaFeuille' est le nom de la feuille sur laquelle sont insérés les boutons.

A+
 
Re : Nombre limité de Macro dans un fichier Excel

Bonjour phlaurent55,

Merci pour ta réponse.

Je débute dans le monde VBA et malheureusement je ne connais pas toutes les ressources. Donc je ne connais pas comment fonctionne une macro évènementielle ...
Mais le fait de m'en avoir parler va me permettre de faire quelques recherches dans ce domaine.
 
Re : Nombre limité de Macro dans un fichier Excel

Merci pour vos réponses !!

C'est super gentil.
Je sais pas si je vais avoir le temps de mettre sa en application ce soir mais je ne manquerai pas de vous répondre.

Merci beaucoup !
 
Re : Nombre limité de Macro dans un fichier Excel

Re,

Donc je ne connais pas comment fonctionne une macro évènementielle ...
une macro évènementielle se déclenche par rapport à un évènement
- à l'ouverture du fichier
- à la fermeture
- suite à un dbl-clic
- suite à un right-clic
- avant une sauvegarde
- .............. et bien d'autres encore

à+
Philippe
 
Re : Nombre limité de Macro dans un fichier Excel

J'ai fait mes petites recherches et je ne sais pas si justement cela peut s'appliquer à ma macro.

Je me permets de vous mettre un exemple de mon tableau sur lequel je travaille (à savoir que le nombre de ligne à diminué nettement).

Merci d'avance
 

Pièces jointes

Re : Nombre limité de Macro dans un fichier Excel

Re,

Affecte cette macro à tes boutons:

Code:
Sub SendMail1_Outlook()
'Avant de lancer cette macro, Dans l'éditeur VBA: Faire Menu / Tools / Reference / Cocher "Microsoft Outlook Library"
    Dim ligne As Long
    Dim ol As New Outlook.Application
    Dim olmail As MailItem
    Dim CurrFile As String
    
    
    On Error Resume Next
    ligne = ActiveSheet.Shapes(Application.Caller).TopLeftCell.Row
    If ligne = 0 Then
        MsgBox "Une erreur est survenue lors de la récupération du numéro de ligne" & vbCrLf & "Essayez de recommencer", vbInformation, "SendMail"
    Exit Sub
    End If
    On Error GoTo 0
    
    If Range("M" & ligne).Value = "Provision insuffisante" Then
        Set ol = New Outlook.Application
        Set olmail = ol.CreateItem(olMailItem)
        With olmail
            .To = Range("J" & ligne).Value
            .CC = Range("L" & ligne).Value
            .Subject = "Impayé - Demande de Blocage" & " " & "-" & " " & Range("C" & ligne).Value & " " & Range("D" & ligne).Value
            .Body = Range("I" & ligne).Value & Chr(10) & Chr(10) & "Merci de bien vouloir bloquer ce compte suite à la traite du" & " " & Range("B" & ligne).Value & " " & "revenue impayée pour motif Provision Insuffisante." & Chr(10) & Chr(10) & "Cordialement"
            .Attachments.Add "C:\Users\Shadoz\Desktop\1.txt"
            .Display    'Display
            'On peut switcher entre .send et .display selon que l'on veut envoyer le mail (send) ou seulement le préparer et le vérifier(display)
        End With
    Else
        Rep = MsgBox("Le motif de l'impayé ne permet pas de faire le blocage automatique. Merci de faire la demande manuellement.", vbCritical, "Service Comptabilité")
    End If
End Sub

A+
P.S. on peut aussi faire en sorte qu'il n'y ait qu'un bouton et qu'il envoie le mail de la ligne active.
 
Dernière modification par un modérateur:
Re : Nombre limité de Macro dans un fichier Excel

C'est nickel ça marche

Un grand merci pour ton aide et ton attention !!

Cela me permettra aussi d'examiner le code pour pouvoir aussi apprendre pour d'autres futur Macro.

Merci !
 
Re : Nombre limité de Macro dans un fichier Excel

Bonjour Hasco, désole de ne pas t'avoir répondu plus tot !

Le code donné est parfait car j'attribue aux boutons de chaque lignes la même macro.

Concernant le fait de n'avoir qu'un bouton risque de ne pas me servir car je ne suis pas le seul à utiliser ce fichier, donc je préfère que chaque personne puisse faire sa partie.

En tout cas, je me répète peut être, mais un grand merci car cela va énormément m'apporté.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…