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

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.
 

CBernardT

XLDnaute Barbatruc
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.
 

Nicokili

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

Bonjour Bernard,
Merci de votre réponse, j'espère qu'avec ce fichier ca ira mieux. Je suis aussi embêter avec les erreurs des lignes D, H, J et M comme vous pouvz le voir dans la feuille 1.
 

Fichiers joints

phlaurent55

XLDnaute Barbatruc
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:

Nicokili

XLDnaute Nouveau
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:confused:) 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
 

Si...

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

salut

pourquoi ne pas utiliser l'outil Tableau qui procure énormément d'avantages ?
Voir un exemple dans le fichier joint.
 

Fichiers joints

Discussions similaires


Haut Bas