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 :

[VBA-E] top et left de cellules ...


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut [VBA-E] top et left de cellules ...
    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
    Dim butTop, butLeft, Bouton
     
    For i = 1 To 50 Step 25
    Range("D" & i).Select
    butTop = Range("D" & i).Top
    butTop = Range("D" & i).Left
    butHeight = Range("D" & i).Height
    butWidth = Range("D" & i).Width
     
     
     
     
      Bouton = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
            , DisplayAsIcon:=False, Left:=butTop, Top:=butTop, Width:=butWidth, Height _
            :=butHeight * 2).Select
     
     Next
    il me colle tous les boutons au même endroit ...
    le top retourne la position par rapport au haut de l'écran ?
    commant lui faire décaller les boutons ... ???
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  2. #2
    Expert confirmé
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Par défaut
    en évitant de mettre la valeur Left dans la variable ButTop puis en évitant de passer deux fois le même paramètre

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    WArf
    la méga honte ...

    un de mes premiers posts entant que modérateur ... et tout ça pour me vautrer lamentablement ...

    à ma décharge 3 ans sans pratiquer VB mais bon là ça ne relève même pas de VB ....


    au passage coucou bidou ...
    ça faisait un bail ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Expert confirmé
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Par défaut
    yo ma grenouille. Content aussi de te revoir

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    bon cette bourde monumentale étant oubliée ...

    comment attribuer au click de chacun de ses bouton un appel à une fonction avec paramètre ?


    accessoirement comment modifier le caption du bouton ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Expert confirmé
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Par défaut
    Pour attribuer des évènements il va falloir jouer avec WithEvents, pour changer le caption
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bouton.Object.Caption = "toto"
    doit le faire

  7. #7
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    non il n'en veut pas ...
    du ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  8. #8
    Expert confirmé
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Par défaut
    quelle version d'excel ???

  9. #9
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    enleve le Select et rajoute un Set ...:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
      set Bouton = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
            , DisplayAsIcon:=False, Left:=butTop, Top:=butTop, Width:=butWidth, Height _
            :=butHeight * 2)
    Bouton.Object.Caption = "D" & i

  10. #10
    Membre éclairé
    Inscrit en
    Mai 2005
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 335
    Par défaut
    je reprend se post que spacefrog a crée pour m'aidé pour vous dire que le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Set Bouton = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
            , DisplayAsIcon:=False, Left:=butLeft, Top:=butTop, Width:=butWidth, Height _
            :=butHeight * 2)
            Bouton.Object.Caption = "nom du bouton"
    marche tres bien

    sinon pas d'information sur
    comment attribuer au click de chacun de ses bouton un appel à une fonction avec paramètre ?
    merci a vous

  11. #11
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Comme je ne comprends pas le problème, je vais répondre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub BoutonMessage_Click()
        r = AfficherMessage("Quelle est la question ?")
        msgbox "La réponse est " & r
    End Sub
     
    Private Function AfficherMessage(Msg)
        AfficherMessage = inputbox(msg,"")
    End Function
    Tu dis

    A+

  12. #12
    Membre éclairé
    Inscrit en
    Mai 2005
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 335
    Par défaut
    j'ai une fonction dans un module et je veu savoir commen y faire appel par un clic sur se fameu bouton...

  13. #13
    Membre éclairé
    Inscrit en
    Mai 2005
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 335
    Par défaut
    je suis pas tres bon en vba mais je veu pas un evenement mais pouvoir
    associer sa
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Function findWorddocs()
    Private Sub Workbook_Open()
    Dim fs, f, f1, fc, t, docfiles, Nomdoc
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFolder("C:\Documents and Settings\avaysse\Mes documents\")
    Set fc = f.Files
    For Each f1 In fc
     Nomdoc = f1.Name
     tabfiles = Split(Nomdoc, ".")
        If (docfiles(UBound(docfiles)) = "doc") Then
            t = t & f1.Name & ";"
        End If
    Next
    a mon bouton ( se code est dans un module alors que mon bouton est dans "thisworkbook")

  14. #14
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    A première vue, dans findWorddocs tu n'as pas de paramètre
    A deuxième vue, findWorddocs ne retourne rien et pour une fonction, c'est pas bien.
    Enfin, pour qu'un bouton placé dans une feuille de calcul (si c'est bien ça), le code de ton bouton doit être dans la feuille de code de ta FEUILLE de calcul.

    Tu dis si c'est ce que tu veux

    A+

  15. #15
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click()
    Application.Run "'ClasseurContenantLaMacro.xls'!findWorddocs "
    End Sub
    En supposant que findWorddocs soit une SUB, non une fonction
    Tu dis

    Edit
    Pour accéder à la feuille de code, tu te mets en mode Création dans la feuille, Deux clics sur le bouton et tu as ton Sub CommandButton1_Click()

  16. #16
    Membre éclairé
    Inscrit en
    Mai 2005
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 335
    Par défaut
    A première vue, dans findWorddocs tu n'as pas de paramètre
    il va avoir un parametre lol

    A deuxième vue, findWorddocs ne retourne rien et pour une fonction, c'est pas bien.
    il renvera quelquechose..je n'est pas fini d'ecrire ma fonction mais cela empeche t'il de onfiguré mon bouton pour qu'il l'apelle ?

  17. #17
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    mais cela empeche t'il de onfiguré mon bouton pour qu'il l'apelle ?
    Non ! Si tu fais bien tout ce que tu as dit...

    A+

    PS - Tu n'as pas répondu :
    Enfin, pour qu'un bouton placé dans une feuille de calcul (si c'est bien ça), le code de ton bouton doit être dans la feuille de code de ta FEUILLE de calcul.
    Tu dis si c'est ce que tu veux...
    :

  18. #18
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    Citation Envoyé par ogenki
    j'ai une fonction dans un module et je veu savoir commen y faire appel par un clic sur se fameu bouton...
    revenons à nos moutons

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click()
        Call MaMaccro
    End Sub
    ca devrait le faire, non ?

  19. #19
    Membre éclairé
    Inscrit en
    Mai 2005
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 335
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click() 
    Application.Run "'ClasseurContenantLaMacro.xls'!findWorddocs " 
    End Sub
    a l'air de marché merci a vous je laisse a sf le soin de fermé se post

    Ogenki

  20. #20
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    j'avoue que j'ai pas encore compris le rapport entre le début et la fin du post, m'enfin, si tout le monde est content

Discussions similaires

  1. [VBA]Rechercher une chaine dans une cellule?
    Par ZIED dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/01/2006, 05h31
  2. [VBA] aligner le texte dans une cellule
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/01/2006, 17h07
  3. [VBA] [EXCEL 97] Formatage automatique des cellules
    Par plante20100 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/09/2005, 09h49
  4. [VBA-E] accéder aux données de cellules fusionnées
    Par hirochirak dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/05/2004, 08h54
  5. [VBA-E] Fonction sum() dans une cellule
    Par Gonzo dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/12/2002, 10h18

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