Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Excel (ou OO) copie de lignes d'un fichier a l'autre



  1. #1
    LeJoker

    Question Excel (ou OO) copie de lignes d'un fichier a l'autre


    ------

    Bonjour,

    Je dispose d'un tableur (NeoOffice ou Excel) et je voudrais créer une macro qui permette de remplir automatiquement des cellules en fonction d'une valeur tapée. Je n'y connais pas grand chose et j'espere que mes explications seront claires

    Je rentre une Valeur dans la cellule A[n] de MaFeuille
    Dès que je quitte la cellule
    Si celle valeur existe dans la Feuille2 dans la colonne A (ligne n)
    Mafeuille.A2 = Feuille2.n2
    Mafeuille.A3 = Feuille2.n3
    Sinon (Message d'alerte)
    Si la macro pouvait fonctionner independamment sur Excel et NeoOffice (OpenOffice pour Mac Os X) en plus ca serait le top.

    Pensez vous que c'est réalisable ? Si oui, je ne serait pas contre un (petit?) coup de pouce...

    Merci

    -----

  2. #2
    sitalgo

    Re : Excel (ou OO) copie de lignes d'un fichier a l'autre

    B'jour,

    Pour lancer une macro à l'appui d'une touche, il faut la détourner. C'est le rôle de la 1ère macro, à lancer quand on ouvre le classeur.
    La 2ème sert à rendre l'affectation normale de la touche quand on en a plus besoin.
    La 3ème c'est là où l'on met le code qui fait ce que l'on veut.
    La touche choisie ici est la touche entrée du pavé numérique.

    Code:
    Sub active_touche()
    'détourne entrée du pavé numérique
    Application.OnKey "{ENTER}", "touche_entree"
    End Sub
    
    Sub desactive_touche()
    Application.OnKey "{ENTER}"
    End Sub
    
    Sub touche_entree()
    '
    'insérer ici routine qui fait le boulot
    '
    ActiveCell.Offset(0, 1).Activate 'sinon ça descend pas automatiquement
    End Sub
    La compatiblité des macros entre excel et ooffice marche rarement.
    Mais si t'as l'gosier, Qu'une armure d'acier, Matelasse. Brassens, Le bistrot.

  3. #3
    LeJoker

    Re : Excel (ou OO) copie de lignes d'un fichier a l'autre

    Merci mais je ne veux pas lancer la macro avec la touche entrée mais plutot dès que la cellule a ete modifiée. Il semble y avoir un événement Change mais je ne sais pas si (comment?) on peut récupérer le Text ou la Valeur de la cellule ainsi que son numéro de Ligne.

    Je ne trouve pas de bonne documentation sur cet Evenement et comme je le disais plus haut je n'y connais pas grand chose...

  4. #4
    sitalgo

    Re : Excel (ou OO) copie de lignes d'un fichier a l'autre

    Le problème avec change c'est que ça tourne en rond si on s'en sert pour modifier la valeur d'une cellule (puisque la modification renvoie à nouveau sur la macro). Il faut que la macro soit affectée à une feuille où l'on rentre la valeur et que les cellules modifiées par le programme soient sur une autre feuille.
    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
        'macro affectée à (par ex) feuil1 seulement
        Cells(1, 1) = ActiveCell.Row
        Cells(1, 2) = ActiveCell.Column
    End Sub
    Cette macro ne s'arrête jamais. La cellule active n'est pas la cellule modifiée mais celle une fois qu'on a validé. Il faut donc désactiver le déplacement (généralement vers le bas) de la touche entrée et ne pas utiliser les flèches.
    Mais si t'as l'gosier, Qu'une armure d'acier, Matelasse. Brassens, Le bistrot.

  5. A voir en vidéo sur Futura
  6. #5
    LeJoker

    Re : Excel (ou OO) copie de lignes d'un fichier a l'autre

    D'accord... Il faut donc que je saississe un valeur sur feuille1 (peut être definir une cellule "de saisie") puis que le script retrouve cette valeur dans la colA de la feuille2, et ajoute les données adjacentes sur la prochaine ligne vide ee la feuille3 donc ?

  7. #6
    sitalgo

    Re : Excel (ou OO) copie de lignes d'un fichier a l'autre

    Oui. comme ça, ça marche.
    Mais si t'as l'gosier, Qu'une armure d'acier, Matelasse. Brassens, Le bistrot.

  8. #7
    LeJoker

    Re : Excel (ou OO) copie de lignes d'un fichier a l'autre

    Hum... je viens de decouvrir l'existence de l'Evenement BeforeDoubleClick. Je crois que je vais plutot me pencher sur cette solution finalement. Merci en tout cas pour ces éclaircissement sur les erreurs a ne pas faire

Discussions similaires

  1. Réponses: 4
    Dernier message: 10/12/2009, 14h54
  2. Macro excel - Trouver le lien d'un fichier
    Par footale dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 12/11/2009, 18h40
  3. récupération de données d'un fichier excel ou vb pour catia
    Par ENIM3A1A1 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 29/01/2008, 10h41
  4. Creation d'un fichier excel langage C
    Par Nithael dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 26/03/2007, 23h23
  5. Mes macros Excel ne passent plus d'un XP à l'autre
    Par Burrhus dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 05/06/2006, 18h20
Découvrez nos comparatifs produits sur l'informatique et les technologies.