Exporter à l'aide d'un bouton enregistrer, uniquement les lignes avec des données

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Nicokili

XLDnaute Nouveau
Bonjour à tous,
Je dois réaliser un fichier pour le boulot mais je suis débutant en VBA et je commence à me mélanger les pinceaux. Je viens donc chercher de l'aide sur ce forum qui m'a déjà beaucoup aidé.
Voici mon, problème:
Je veux copier des données de la feuille 1, sur la feuille 2. Cependant je ne sais jamais combien de ligne vont faire partie de ces données. Il se peut donc que je doive enregistrer de la ligne 2 (la ligne 1 étant mes noms de colonnes) à la ligne 6 ou de la ligne 2 jusqu'à la ligne 10 etc.
J'arrive donc à créer un bouton pour enregistrer mes données mais toujours de la ligne 2 à la ligne 10 par exemple et donc, quand j'ai des lignes vides (7,8,9 par exemple) elles s'enregistrent aussi dans la feuille 2 et j'ai des "trous" de lignes vides entre chaque enregistrement. Je voudrais donc ne plus avoir ces lignes vides dans ma feuille 2. Idéalement, quand je cliquerai sur mon bouton d'enregistrement, il serait bien que mes données se supprime de la feuille 1 et aillent dans la feuille 2 s'ajouter au dessus des anciennes données enregistrées.
Je ne sais pas si je m'explique assez bien mais merci d'avance pour vos réponses.
Nico.
 
Re : Exporter à l'aide d'un bouton enregistrer, uniquement les lignes avec des donnée

Bonjour Nicokili et le forum,

Bienvenue sur le forum !

Les explications sont claires. Cependant, un fichier de ton travail permettrait de coller au plus près de ton projet.
 
Re : Exporter à l'aide d'un bouton enregistrer, uniquement les lignes avec des donnée

Bonjour Nico...... , Bernard

voici le code pour la copie en feuille 2

Code:
    Range("A2:P" & Range("A65535").End(xlUp).Row).Copy
    Sheets("Sheet2").Select
    Range("A" & Range("A65535").End(xlUp).Row + 1).Select
    Selection.PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
pour supprimer les lignes de la feuille 1 qui ont été copiées vers l'autre feuille, il faut ajouter ceci:

Code:
Sheets(1).Range("A2:P" & Range("A65535").End(xlUp).Row + 1).ClearContents
à+
Philippe
 
Dernière édition:
Re : Exporter à l'aide d'un bouton enregistrer, uniquement les lignes avec des donnée

Bonjour NicoKili...... ,

Salut Philippe,

Une reprise du fichier et du code de Philippe.

A vérifier si cela fonctionne dans tous les cas de figure de lignes à éliminer.
 

Pièces jointes

Re : Exporter à l'aide d'un bouton enregistrer, uniquement les lignes avec des donnée

Bonjour Philippe,
Bonjour Bernard,
Desole de ne pas avoir repondu plus tot mais je suis en Tanzanie (avec une connexion pas top et donc des difficultees pour "m'autoformer" a VBA😕) et je ne pouvais pas tester votre fichier dans les bureaux qui etaient fermes ce weekend.
Merci beaucoup pour vos reponses, ca me sort de l'impasse, effectivement le fichier marche tres bien.
Par contre, avec ce code je n'ai plus les correspondances entre certaines colonnes comme par exemple "l'activity code qui renseignait directement l'activity description" ou le "driver's coy qui renseignait le driver name". J'avais utilise une recherchev auparavant mais javais des messages d'erreurs dans tout le reste de la colonne, ca nallait pas. Jessaye donc de reintegrer cet recherchev dans ma macro mais je seche... Seriez vous capable une fois de plus de maider ?
Encore merci a vous et bonne journee
Nico
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour