Elimination de lignes

  • Initiateur de la discussion AlainM
  • Date de début
A

AlainM

Guest
Bonjour à tout le monde

Voilà j'aimerai pouvoir recopier un tableau (joint ici) en éliminant les lignes contenant des cellules vides ou le signe * ou la forme 0/0/0 de date.

C'est pour utiliser ce tableau afin d'en faire un TCD de classement par mois, lorsqu'il y a un vide, une * ou un 0/0/0 le TCD ne veut pas me faire le classement mensuel et me retourne toutes les dates.

Je ne souhaite prendre, dans le nouveau tableau, que les valeurs des colonnes B, D et H.

J'espère que je ne me suis pas trop empétré dans mes explications.

Merci de votre aide

@lain
 

Pièces jointes

  • Tableau.zip
    9.3 KB · Affichages: 13
  • Tableau.zip
    9.3 KB · Affichages: 17
  • Tableau.zip
    9.3 KB · Affichages: 13
R

Robert

Guest
Bonjour Alain, bonjour le forum,

Voici les codes d'une macro qui execute tes demandes.

Public Sub elim()
'délimite le tableau
Dim lig As Integer
Dim col As Integer
lig = Range("A65536").End(xlUp).Row
col = Range("IV1").End(xlToLeft).Column
Range(Cells(1, 1), Cells(lig, col)).Copy 'copie le tableau
Sheets(2).Select 'sélectionne la feuil2
ActiveSheet.Paste 'colle le tableau
Application.CutCopyMode = False
Range("A1").Select
'efface la ligne en fonctions des 3 critères (vide, * ou 0/0/0)
For Each cel In Range(Cells(1, 1), Cells(lig, col))
If cel.Value = "" Or cel.Value = "*" Or cel.Value = "0/0/0" Then
cel.EntireRow.Delete
End If
Next
'supprime les colonnes
Range("A:A,C:C,E:G").Delete
End Sub

À plus,

Robert
 
C

Celeda

Guest
Bonjour,

Alain, je m'excuse de te dire cela mais je trouve trés dangereux de devoir éliminer des lignes sur une database et pardonne moi si je m'insére dans ce post mais mes déboires avec les TCD ne datent pas d'hier avec les dates!! lol!!

Aussi par prudence, je me suis crée une parade à ces problèmes : je m'explique :

il s'agit tout simplement d'incrémenter dans une autre colonne le mois par le chiffre 1 ou 2 ou 3

(une formule ferait mieux l'affaire pour s'assurer que l'on a bien une date dans la colonne MoisAnnee du style :

Si D2 est une date tu prends D2 et tu le transformes en 1 Si c'est janvier, si c'est février 2 , ect....et Si c'est * tu mets 13 et si c'est 0/0/ 0 c'est 14 par exemple car si tu veux conserver les * et les 0/0/ 0 pour pouvoir les cacher ensuite dans le TCD, ce serait plus efficace que de deleter la ligne ou on pourrait creer une macro function qui ferait le travail par exemple Oh Si!! - pour la formule j'ai du mal et pour la macro function je sais pas faire)

mais bon en attendant ma manière artisanale fonctionne bien et je ne perds pas d'info.

Donc une fois que j'ai crée cette colonne intermédiaire tel que dans le fichier ci-joint, je peux creer le TCD et je demande la colonne Mois qui est réduite à sa plus stricte expression et je filtre en enlevant tout simplement 13 et 14 et j'ai les mois de l'année avec le lieu et le total. Tu pourrais même aussi faire un groupage mais cela en vaut-il la peine et serait-ce efficace ?


Du coup tu as toujours ta database intacte et un seul et unique tableau de syntèse modifiable à souhait,


à méditer en éspérant que cela puisse t'aider,

Celeda
 

Pièces jointes

  • Tableau-Alain.zip
    26.3 KB · Affichages: 14
A

AlainM

Guest
Bonjour et merci de toutes vos réponses aussi rapides qu'intéressantes.

J'ai tout pris en compte et je vais regarder.

Celeda tu as raison de t'insérer dans ce post car tu m'as toujours donné de très bon conseil et c'est quand même grace à toi qu'une partie de mon programme fonctionne.

Merci à Robert pour sa proposition, je la conserve aussi.

Oui Lea je programme un peu en VBA Excel, c'est peut être pour celà que je vais prendre la solution de Celeda car je pourrai donner un numéro à chaque mois par l'intermédiaire d'une petite macro.

En tous les cas je vous renouvelle mes remerciements les plus sincères.
@lain
 
A

AlainM

Guest
bonjour à tout le monde

Si si Dan comme je l'ai expliqué dans l'autre post les questions n'étaient pas les mêmes car je ne voulais pas emmêler tout le monde, mais c'est le contraire qui se produit et j'en suis désolé. Et en fait ca rejoint la même chose car j'essaie de trouver plusieurs solution pour arriver à la possibilité du classement par mois dans mon TCD et d'aliminer mes éléments indésirables pour le groupage.

Bonne journée à tous
@lain

PS: Lea, je commence à douter sérieusement de mes capacités à programmer en VBA Excel :(
 

Discussions similaires

Réponses
4
Affichages
328
Réponses
10
Affichages
228

Statistiques des forums

Discussions
312 332
Messages
2 087 365
Membres
103 528
dernier inscrit
maro