RESOLU : Définition de la dernière ligne lors des sauvegardes

Victor21

XLDnaute Barbatruc
Bonjour.

Ce sera sans doute plus clair dans les fichiers joints.
Il y a des formules dans 11 lignes, dont certaines non renseignées du fichier que je veux sauvegarder.
Lors de chaque sauvegarde les 11 lignes sont copiées, y compris celles qui n'ont aucune donnée, et la dernière cellule de la sauvegarde n'est pas la dernière avec des données, mais ici la 11° après la 1° ligne sauvée dans mon fichier sauvegarde.

Le pb vient de ma définition de :
DerligSaisie = Range("A1").SpecialCells(xlCellTypeLastCell).Row et/ou de
PremligHisto = wb.Sheets("Archive").Range("A1").SpecialCells(xlCellTypeLastCell).Row + 1
J'ai essayé avec CurrentRégion sans succès.

Merci d'avance à qui pourra me fournir une piste pour que mes lignes sauvegardées se suivent sans ligne vide.

Des conseils pour améliorer, simplifier, fiabiliser, optimiser mon code seront également les bienvenus. Mais là, j'abuse, non ?
:)
 

Pièces jointes

  • Test.zip
    28.1 KB · Affichages: 32
  • Test.zip
    28.1 KB · Affichages: 32
  • Test.zip
    28.1 KB · Affichages: 30
Dernière édition:

Hippolite

XLDnaute Accro
Re : Définition de la dernière ligne lors des sauvegardes

Bonjour,
Une petite compil : derniere-ligne-derniere-colonne-renseignees
comme tu n'as pas de formule en colonne A :
Code:
Range("A1").End(xlDown) - 1
Donne la dernière ligne de la plage de cellules pour la colonne A , il ne faut pas de trou, sinon
Code:
Range("A65536").End(xlUp)
Donne la dernière ligne de la feuille pour la colonne A
A+
 

Victor21

XLDnaute Barbatruc
Re : Définition de la dernière ligne lors des sauvegardes

Bonjour, Hippolite.

Merci pour ce lien que j'avais déjà consulté et copié dans mes outils (c'est d'ailleurs dans une de tes contributions que je l'avais trouvé).
:)

Hélas, je dois tenir compte des "oublis" des utilisateurs, qui peuvent laisser des blancs dans l'une ou l'autre des colonnes.
Je ne peux pas savoir à l'avance quelle sera la colonne la plus pleine, et ne veux pas risquer d'effacer des données à cause d'un champ omis.
 

Fo_rum

XLDnaute Accro
Re : Définition de la dernière ligne lors des sauvegardes

Bonjour,

en attendant mieux, vois si cela peut te convenir.
Le problème de la première ligne d'écriture ne m'inspire pas avec cette cellule fusionnée !

Désolé pour ceux qui ont chargé le fichier :(. Le bon est dans le nouveau post.
 
Dernière édition:

Victor21

XLDnaute Barbatruc
Re : Définition de la dernière ligne lors des sauvegardes

Bonjour, Fo_rum.

Merci. Je teste et te tiens très vite informé.

Mais...
Le problème de la première ligne d'écriture ne m'inspire pas avec cette cellule fusionnée !
Je n'ai pas de cellule fusionnée, que j'exècre de toute mon âme et que j'évite comme la peste dans les feuilles de calcul (sauf besoin de présentation).
:)
 

Victor21

XLDnaute Barbatruc
Re : Définition de la dernière ligne lors des sauvegardes

Re, Fo_rum

Merci pour ton aide.
J'ai effectué quelques tests, mais lorsqu'une date manque, la sélection cesse à la dernière date, et les lignes suivantes ne sont ni copiées ni effacées...
:mad:
Code:
Dim DerligSaisie As Long, Col As Integer, PG As Long
    For Col = 1 To 5
        DerligSaisie = 6
        Do
            DerligSaisie = DerligSaisie + 1
            If DerligSaisie < Cells(Rows.Count, Col).End(xlUp).Row And _
               Not Cells(DerligSaisie, Col).HasFormula Then _
               DerligSaisie = Cells(Rows.Count, Col).End(xlUp).Row
        Loop Until Cells(DerligSaisie, Col) = ""
        If DerligSaisie > PG Then PG = DerligSaisie
    Next
    'DerligSaisie est la plus grande des denières lignes non vides et sans formules
PS : Je n'ai pas compris ce que représente PG.
 

Fo_rum

XLDnaute Accro
Re : Définition de la dernière ligne lors des sauvegardes

Re,

Désolé, je me suis trompé de fichier.
J'ai inclus une boucle qui cherche la plus grande (PG) des dernières lignes des colonnes (5 ici) formules exclues.
 

Pièces jointes

  • Copie Autre Classeur Si.zip
    18.2 KB · Affichages: 31

Victor21

XLDnaute Barbatruc
Re : Définition de la dernière ligne lors des sauvegardes

Re, Fo_rum

Je te remecie infiniment.
Les tests effectués sont pour le moment tous concluants.

J'étais bloqué sur cette "dernière ligne" depuis hier après-midi, sans aboutir, et grâce à toi, le problème n'en est plus un.
Je cours prendre deux Dolipranes et retourne à une occupation normale.
:):)
 

Discussions similaires

Statistiques des forums

Discussions
312 305
Messages
2 087 077
Membres
103 455
dernier inscrit
saramachado