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 :

demarrer un code à partir d'un numéro de ligne [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2012
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 118
    Par défaut demarrer un code à partir d'un numéro de ligne
    Bonjour

    j'ai un code qui fonctionne bien, si je supprime ce qu'il y a dans mon fichier ci joint de la ligne 1 à 8. J'aurais aimé savoir comment faire pour qu'il fonctionne SANS tenir compte de ce qu'il y a inscrit dans les ligne 1 à 8 mais je seche??

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Sub Test1()
     Dim EnTete(), k As Byte, Col As Byte
     Dim Lig As Long, i As Long, C As Range
     Application.ScreenUpdating = False
     EnTete = Array("LIGNE 1", "LIGNE 2", "LIGNE 3", "LIGNE 4", "LIGNE 5")
     PremLig = Cells.Find("*", , , , xlByRows, xlNext).Row
     'PremLig = ActiveSheet.UsedRange.Row
     For k = LBound(EnTete) To UBound(EnTete)
       Col = Rows(PremLig).Find(What:=EnTete(k), LookAt:=xlWhole).Column
       'Lig = Cells(Rows.Count, Col).End(xlUp).Row
     Lig = 42
     Range(Cells(PremLig + 1, Col), Cells(Lig, Col + 1)).Copy Sheets("Feuil3").[A65536].End(xlUp).Offset(1, 0)
     Next k
     With Sheets("Feuil3")
       For i = .Cells(.Rows.Count, 1).End(xlUp).Row To 2 Step -1
         If .Cells(i, 1) = "" Then .Rows(i).Delete
       Next i
       Set mondico = CreateObject("Scripting.Dictionary")
       Set mondico1 = CreateObject("Scripting.Dictionary")
       For Each C In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
         'supprime l'espace à droite
         C.Value = RTrim(C.Value)
         mondico(C.Value) = mondico(C.Value) + 1
         mondico1(C.Value) = mondico1(C.Value) + C.Offset(, 1).Value
       Next C
       .Range("E1").Resize(1, 3) = Array("Titres", "Volumes", "Poids")
       .Range("E2").Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
       .Range("F2").Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
       .Range("G2").Resize(mondico1.Count, 1) = Application.Transpose(mondico1.items)
       .Range("E2:G" & .Range("G65536").End(xlUp).Row).Sort Key1:=.Range("G2"), Order1:=xlDescending, Header:=xlNo
     End With
     Application.ScreenUpdating = True
     End Sub
    Thanks in advance

    Fichiers attachés Fichiers attachés

  2. #2
    Membre chevronné Avatar de Bear the french
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations forums :
    Inscription : Mai 2012
    Messages : 352
    Par défaut
    Bonjour,

    J'avoue que je n'ai pas testé ou même cherché à comprendre ce que pouvait faire ta macro...

    Ceci dit, tu pourrais essayer quelques choses :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PremLig = Cells.Find("*", , , , xlByRows, xlNext).Row
    par

    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each C In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each C In .Range("A10:A" & .Range("A65536").End(xlUp).Row)
    Je pense respecter la logique du programme en décalant la procédure de 9 lignes vers le bas.
    Dis nous ce que cela donne.

    Bertrand

  3. #3
    Membre très actif
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2012
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 118
    Par défaut
    perfect! Merci bcp

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/06/2006, 15h45
  2. Réponses: 3
    Dernier message: 22/05/2006, 09h42
  3. [WD9] Générer du code à partir de l'AGL
    Par Romanops dans le forum WinDev
    Réponses: 2
    Dernier message: 11/04/2006, 16h28
  4. [IDE][VS2003]Comment afficher numéros de lignes du code?
    Par Alexj51 dans le forum Visual Studio
    Réponses: 2
    Dernier message: 01/03/2006, 10h42
  5. Trouver le jour de l'année à partir de son numéro
    Par Nounours666 dans le forum C++Builder
    Réponses: 7
    Dernier message: 09/01/2006, 13h20

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