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 :

Utiliser target.value dans une plage


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
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut Utiliser target.value dans une plage
    Bonjour,

    j'ai une petite difficulté à écrire une code.
    J'ai une plage de cellule non contigues C1:L1 - C4:L4 - C7:L7 - C10:L10 .....(toujours avec un pas de 3).
    Et je souhaite utiliser target.value. Je ne sais pas où définir ma plage à l'intérieur de laquelle target.value sera appliquée ?
    j'ai le code de target.value pour tout un tableau mais pas pour une plage.

    Merci pour vos conseils
    @+

  2. #2
    Membre Expert
    Avatar de cb_60
    Homme Profil pro
    Chargé de mission technique
    Inscrit en
    Juillet 2007
    Messages
    1 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chargé de mission technique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 253
    Billets dans le blog
    14
    Par défaut
    Bonsoir
    Il faudrais en voir un peu plus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("C1:L1,C4:L4,C7:L7,C10:L10").Select
    ce que j'ai mis au dessus permet de selectionner tes cellules
    L'imagination est plus importante que le savoir.... A . Einstein. :pastaper:
    https://www.developpez.net/forums/blogs/179588-cb_60/
    Merci de cliquer sur :resolu:pour clore cette discussion.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    Bonjour,

    OK merci.
    Deux précisions :

    1 - mes lignes vont jusqu'à 112
    2 - je ne veux pas les sélectionner, je veux nommer cette plage et c'est à l'intérieur de cette plage que va s'appliquer target.value

  4. #4
    Membre Expert
    Avatar de cb_60
    Homme Profil pro
    Chargé de mission technique
    Inscrit en
    Juillet 2007
    Messages
    1 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chargé de mission technique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 253
    Billets dans le blog
    14
    Par défaut
    Re
    Une adaptation d'une macro de Michel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
           Dim x As Integer, y As Integer
     
            'Crée une boucle de 1 à 112
            For x = 1 To 112 Step 3
                'Crée une boucle de 1 à 7
                For y = 1 To 7
                    'Ecrit dans les colonnes
                    Cells(x, y) = TAvaleur '"L" & x & "-C" & y
                Next y
            Next x
    correction pour ne pas boucler sur toutes les feuilles
    L'imagination est plus importante que le savoir.... A . Einstein. :pastaper:
    https://www.developpez.net/forums/blogs/179588-cb_60/
    Merci de cliquer sur :resolu:pour clore cette discussion.

  5. #5
    Membre Expert
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Par défaut
    bonsoir,

    à ton tour de m'éclaircir


    c'est quoi pour toi
    Et je souhaite utiliser target.value
    target.value ?

    PS: pour t'aider, pour moi target et le nom du paramétre utilisé par Excel VBA, dans la plus part des procédure événementielles possédant un paramétre de type range (plage).

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    En fait, Target.value est utilisé comme RechercheV mais dans la cellule courante.

    le code ci-dessous fonctionne à merveille MAIS sur tout un tableau.

    Je cherche à limiter cela à, disons aux lignes 4 - 7 - 10 - 13 - 16 -.....


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    Dim i As Byte
    Dim code As String
     
    On Error GoTo fin
    If Target.Value <> "" Then
        code = Target.Value
        For i = 3 To 9
            If code = Cells(i, 14) Then Target.Value = Cells(i, 15)
        Next
    End If
    fin:
    End Sub

  7. #7
    Membre Expert
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Par défaut
    Bonjour,Pierre

    je continue à essayer de t'expliquer ce qu'est target avant de te répondre...

    regarde ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    tu vois bien que Target et un paramétre range de la fonction événemetielle Worksheet_change. Ainsi lorsque un changement intervient dans ta feuille excel , excel appelle cette fonction avec comme paramétre target qui pointe sur la plage de cellule modifié.

    cela n'as rien à voir avec rechercheV que tu "lance toi même" en lui passant tes paramétres.

Discussions similaires

  1. plusieurs value dans une liste deroulante
    Par lepierre dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 16/11/2004, 15h53
  2. Utilisation de Getdate dans une fonction
    Par BaronSamdi dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 16/11/2004, 11h12
  3. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 19h38
  4. [Applet]Utiliser plusieurs Applet dans une même classe
    Par BRAUKRIS dans le forum Applets
    Réponses: 5
    Dernier message: 11/06/2004, 16h27
  5. Réponses: 3
    Dernier message: 11/03/2004, 11h58

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