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 :

Creation de fonction


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Technicien Informatique
    Inscrit en
    Février 2006
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien Informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 187
    Par défaut Creation de fonction
    Bonjour à tous !

    Je souhaite créer une fonction exploitable dans excel qui transforme automatiquement les caractères en caractère en majuscule

    si j'ai bien compris il faut que je crée une fonction et que je j'enregistre le document au format xla puis que je l'ajoute aux fonctions complémentaires.

    Mon problème est que j'ignore comment coder cela pour que ce soit opérationnel dans excel et utilisable comme une fonction existante ....

    Merci d'avance pour vos conseils et suggestions

    Jean Marc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function maj_auto( cellules as range)
    dim plage
    for each cellule in plage
    do
    ucase(cellule)
    next
    end function

  2. #2
    Membre chevronné
    Inscrit en
    Décembre 2003
    Messages
    434
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 434
    Par défaut
    Salut,

    Il existe une fonction dans excel qui fait cela, pourquoi la reinventer...

    ++
    Minick

  3. #3
    Membre éclairé
    Profil pro
    Technicien Informatique
    Inscrit en
    Février 2006
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien Informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 187
    Par défaut Fonction Majuscule
    Merci de votre réponse !

    Mais comment faire pour que je puisse utiliser cette fonction
    avant d'avoir taper une valeur dans une cellule ( ce qui provoque r une référence circulaire ) ?

    Merci encore pour vos idées

    Jean Marc

  4. #4
    Membre chevronné
    Inscrit en
    Décembre 2003
    Messages
    434
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 434
    Par défaut
    re,

    Ok, je comprend mieux, il faut une correction automatique et pas une formule.

    Dans ce cas il faut placer le code dans le code de la feuille.
    Clique droit sur l'onglet (Feuil1 par exemple) 'visualiser le code' et coller le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim Cellule As Range
     
        For Each Cellule In Target
            Cellule.Value = UCase(Cellule.Value)
        Next
    End Sub

  5. #5
    Membre éclairé
    Profil pro
    Technicien Informatique
    Inscrit en
    Février 2006
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien Informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 187
    Par défaut Majuscule + choix des cellules dans macro
    Génial ! C'est exactement ce qu'il me faut à un détail près je souhaiterais pouvoir définir les cellules qui m'intéressent directement dans la macro est ce possible ?

    Merci beaucoup pour vos conseils

    Jean Marc

  6. #6
    Membre chevronné
    Inscrit en
    Décembre 2003
    Messages
    434
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 434
    Par défaut
    re,

    En remplacant "LaPlageConcernee" par la plage ca doit etre bon

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        Dim Cellule As Range, Plage As Range
     
        Set Plage = Intersect(Target, Range("LaPlageConcernee"))
     
        If Not Plage Is Nothing Then
            For Each Cellule In Target
                Cellule.Value = UCase(Cellule.Value)
            Next
        End If
    End Sub
    ++
    Minick

Discussions similaires

  1. [FPDF] creation de fonction
    Par KiranoO dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 05/03/2009, 23h48
  2. creation de fonction et appel via une autre classe
    Par oceane751 dans le forum Langage
    Réponses: 3
    Dernier message: 21/01/2008, 23h26
  3. creation de fonction
    Par acik59 dans le forum C
    Réponses: 11
    Dernier message: 20/04/2007, 15h37
  4. creation des fonctions
    Par old zbair dans le forum Excel
    Réponses: 2
    Dernier message: 29/03/2007, 20h55
  5. creation des fonctions
    Par zoheir_hm dans le forum Oracle
    Réponses: 2
    Dernier message: 12/04/2006, 10h28

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