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 :

Macro Cellule active [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 11
    Par défaut Macro Cellule active
    Bonjour à tous,
    bientôt le we courge!

    Voilà mon problèle. La ligne en rouge me renvoie une erreur 1004.
    En gros je veux copier mes valeurs dans la colonne K (=11) à partir de la ligne 4.
    Or, la colonne est vide à l'origine donc se baser sur la première cellule non-vide doit lui poser problème. Quelle solution s'offre à moi?

    Merci à tous...

    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
    Dim montant_c As Variant
        Dim i_m As Variant
        Dim iter_m As Variant
        
        Windows("DSIC-Outil-Plan d'Activités-CSOL Fin_V0.11.xlsx").Activate
        Sheets("Coût non jh").Select
        Range(Range("G9"), Range("G9").End(xlDown)).Select
        iter_m = 9
        
        While ActiveSheet.Cells(iter_m, 7).Value <> ""
        iter_m = iter_m + 1
        Wend
        
        For i_m = 9 To iter_m
        Windows("DSIC-Outil-Plan d'Activités-CSOL Fin_V0.11.xlsx").Activate
        Sheets("Coût non jh").Select
        Range(Range("G9"), Range("G9").End(xlDown)).Select
        montant_c = Cells(i_m, 7).Value
        Windows("DSIC-Outil-Inputs_v0.3.xlsx").Activate
        Sheets("B-Budget Annuel").Select
        Cells(ActiveSheet.Cells(4, 11).End(xlDown).Row + 1, 11).Select    
        Selection.Value = montant_c
        
        Next

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    Tu peux tester le contenu de K4. Si c'est vide, tu commences là. S'il y a quelque chose, tu cherches la première ligne vide comme tu le fais actuellement.

    Cdlt,

    PGZ

  3. #3
    Membre habitué
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 11
    Par défaut
    Merci de ton aide PGZ, c'est sympa

    Alors si je comprends bien, je fais un test du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    IF Range("K4") <> "" THEN Range("K4").Select
    ELSE
    Cells(ActiveSheet.Cells(4, 11).End(xlDown).Row + 1, 11).Select
    End IF

  4. #4
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Re,

    Oui, tu peux essayer cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    IF Range("K4") <> "" THEN 
        ActiveSheet.Range("K4").Select
    ELSE
        ActiveSheet.Cells(ActiveSheet.Cells(4, 11).End(xlDown).Row + 1, 11).Select
    End IF
    PGZ

  5. #5
    Membre habitué
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 11
    Par défaut
    Hmmm il me renvoie encore erreur 1004 Application-defined or Object-defined Error

    A NOTER que c'est = et non <> mais ca ne résound pas le pb. Il me rentre bien ma première valeur, mais dès que la boucle for fait une deuxième iteration, ca plante...

  6. #6
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Re,

    Citation Envoyé par Coco_O Voir le message
    A NOTER que c'est = et non <>
    Ca c'est bien vrai. Comme quoi ...

    Citation Envoyé par Coco_O Voir le message
    Hmmm il me renvoie encore erreur 1004 Application-defined or Object-defined Error
    Il me rentre bien ma première valeur, mais dès que la boucle for fait une deuxième iteration, ca plante...
    Sur quelle ligne?

    PGZ

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/01/2015, 23h37
  2. [OpenOffice][Tableur] [tableur] macro copie colle de plage de cellule active
    Par nhan57 dans le forum OpenOffice & LibreOffice
    Réponses: 2
    Dernier message: 26/01/2013, 23h22
  3. [XL-2007] lancer une macro par activation d'une cellule
    Par arctica dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/11/2011, 17h26
  4. [XL-2003] macro copier plage une de cellules et l'insérer dans la cellule active
    Par grimou dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 07/05/2009, 00h42
  5. executer la macro sur la cellule Active
    Par k-eisti dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/04/2007, 13h51

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