Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/12/2011, 23h05   #1
Invité de passage
 
Inscription : mai 2009
Messages : 22
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 22
Points : 0
Points : 0
Par défaut Lignes vides qui ne le sont pas

Bonjour a vous tous,

J'ai ce fichier ci joint qui à partir de la lignes 39 semble vide mais ne l'ai pas!!!!
Comment je peut faire pour les supprimer par ce que je me retrouve avec un fichier très volumineux

Merci a vous.
Fichiers attachés
Type de fichier : rar exemple.rar (53,3 Ko, 7 affichages)
Sobas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 00h05   #2
Membre du Club
 
Avatar de Kaera
 
Femme
Étudiant
Inscription : novembre 2011
Messages : 102
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 22
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Santé

Informations forums :
Inscription : novembre 2011
Messages : 102
Points : 69
Points : 69
Salut Sobas,

Je pense que le topic suivant (résolu) devrait t'aider :

http://www.developpez.net/forums/d48...-lignes-vides/

Kaera*
Kaera est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 01h36   #3
Invité de passage
 
Inscription : mai 2009
Messages : 22
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 22
Points : 0
Points : 0
Merci pour l'info mais en fait pour moi il ne s'agit pas d'une erreur d'excel (car en ouvrant un nouveau fichier, cela fonctionne correctement), mais il doit y avoir une ligne dans ma macro qui fait ça.

J'imagine que c'est l'action sélectionner tout...
Mais dans se cas comment faire pour sélectionner toutes les lignes qui se sont pas vide pour ne pas faire ctrl+A.

Si non si je les sélectionnes et que je fais clique droit et que je supprime sa fonctionne, mais là encore il faudrait que la sélection soit faite après ou la dernière cellule pleine. Dans mon cas elle contient le symbole "/"
Sobas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 07h44   #4
Membre du Club
 
Avatar de Kaera
 
Femme
Étudiant
Inscription : novembre 2011
Messages : 102
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 22
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Santé

Informations forums :
Inscription : novembre 2011
Messages : 102
Points : 69
Points : 69
Salut Sobas,

Voici une suggestion, à tester et peut-être remodeler :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub test_ctrlA()
 
Dim TheCell As Range
Dim R As Range
 
Sheets("nomdetafeuille").Activate 'pas nécessaire si tu n'as qu'une feuille
Application.ScreenUpdating = False
Set R = Range("A:A")
    For Each TheCell In R
        If Not IsEmpty(TheCell) = True Then
            TheCell.EntireRow.Select
            'ici ton traitement
        End If
    Next TheCell
 
Application.ScreenUpdating = True
 
End Sub
Ce code permet de sélectionner toutes les lignes dont la cellule en colonne A est non vide (encore une fois, fonction de ton fichier exemple donc après, à toi d'adapter à ton cas).

J'espère ne pas avoir répondu à côté !

Kaera*
Kaera est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 11h26   #5
Membre Expert
 
Avatar de MarcelG
 
Homme Marcel GALANO
Développeur informatique
Inscription : juillet 2009
Messages : 644
Détails du profil
Informations personnelles :
Nom : Homme Marcel GALANO
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Finance

Informations forums :
Inscription : juillet 2009
Messages : 644
Points : 1 255
Points : 1 255
Par défaut mise à jour dernière cellule

Bonjour Kaera, Sobas, Bonjour le Forum,

Si je peux me permettre,

Tester tout une colonne peut parfois être lourd. Mieux vaut sélectionner les lignes (ou colonnes) informées après en avoir détecté la dernière. Voir sur ce forum les différentes discussions à ce sujet.

Comme déjà signifié, sélectionner cellule par cellule un champ donné de valeurs, n'est qu'une solution de dernier recours. Mieux vaut privilégier les méthodes SpecialCells et Find.

Code :
Not IsEmpty(TheCell) = True
Ici, la propriété = True n'est pas nécessaire, mais c'est une question de choix.

Code :
TheCell.EntireRow.Select
Il n'est pas nécessaire de sélectionner un objet Range pour lui affecter une méthode ou une propriété. Ce genre de ligne alourdit le code.

Maintenant, j'en viens au problème de l'ami Sobas.
Ce phénomène est connu.
Voici un code de Laurent Longre qui te permettra d'y remédier, et que j'ai déjà mentionné dans une précédente discussion.

Code :
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
Sub NettoieEtDerniereCellule()     ' Laurent Longre
  Dim Sht As Worksheet, DCell As Range, Calc As Long, Rien As String
  On Error Resume Next
  Calc = Application.Calculation
  With Application
    .Calculation = xlCalculationManual
    .StatusBar = "Nettoyage en cours..."
    .EnableCancelKey = xlErrorHandler
    .ScreenUpdating = False
  End With
  For Each Sht In Worksheets
    If Sht.UsedRange.Address <> "$A$1" Or Not IsEmpty(Sht.[A1]) Then
      Set DCell = Sht.Cells.Find("*", , , , xlByRows, xlPrevious)(2)
      If Not DCell Is Nothing Then
        Sht.Range(DCell, Sht.Cells([A:A].Count, 1)).EntireRow.Clear
        Set DCell = Nothing
        Set DCell = Sht.Cells.Find("*", , , , xlByColumns, xlPrevious)(, 2)
        If Not DCell Is Nothing Then _
 Sht.Range(DCell, Sht.[IV1]).EntireColumn.Clear
      End If
      Rien = Sht.UsedRange.Address
    End If
  Next Sht
  Application.StatusBar = False
  Application.Calculation = Calc
End Sub
__________________

Bien Cordialement.

Marcel

Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.


MarcelG est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 19/12/2011, 12h12   #6
Invité de passage
 
Inscription : mai 2009
Messages : 22
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 22
Points : 0
Points : 0
Parfais, je vous remercie a tout les deux de votre aide.

C'est vraiment super, vous m’enlevai une épine du pied.
Sobas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 12h46   #7
Membre du Club
 
Avatar de Kaera
 
Femme
Étudiant
Inscription : novembre 2011
Messages : 102
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 22
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Santé

Informations forums :
Inscription : novembre 2011
Messages : 102
Points : 69
Points : 69
MarcelG, Sobas,

De toute évidence, je ne suis pas prête à répondre aux questions des membres !
En tout cas merci de ta correction Marcel, j'en prends note.


Kaera*
__________________
.
Si la réponse d'un membre vous satisfait, pensez à voter en cliquant sur le pouce levé !
***
Un vote négatif sans justification, c'est dénué d'intérêt !
Accompagnez-le d'un message explicatif, cela évitera au membre visé de reproduire la même erreur. Bien plus efficace !

...An ka mandéw, mèt taw ek tan mwen pou sa fè an lô...
Kaera est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 15h01   #8
Membre Expert
 
Avatar de MarcelG
 
Homme Marcel GALANO
Développeur informatique
Inscription : juillet 2009
Messages : 644
Détails du profil
Informations personnelles :
Nom : Homme Marcel GALANO
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Finance

Informations forums :
Inscription : juillet 2009
Messages : 644
Points : 1 255
Points : 1 255
Salut Kaera,

Citation:
De toute évidence, je ne suis pas prête à répondre aux questions des membres !
Que non! D'autant qu'il n'y a rien de faux dans ton code!

Pardon si j'évoque ma propre expérience.
L'iune des premières choses que l'on apprend dans ce genre de forum est l'absolue nécessité de mettre son orgueuil de côté.

Proposer une résolution, c'est certes aider celui qui pose une question, mais c'est aussi s'exposer aux remarques des autres membres.
Il y 3 facteurs de progression à mon sens :
- la recherche par tous les moyens possibles de la réponse à ses questions
- la recherche d'une réponse aux questions posées par les autres en "creusant" ses propres acquis.
- l'amélioration de nos codes par la prise en compte des remarques des autres membres.

A moins d'avoir acquis la technicité d'un mercatog ou d'un Fontaine, dans ces conditions, nous avons tous une marge de progression.

En conclusion : continue !
__________________

Bien Cordialement.

Marcel

Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.


MarcelG est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 19/12/2011, 22h46   #9
Membre du Club
 
Avatar de Kaera
 
Femme
Étudiant
Inscription : novembre 2011
Messages : 102
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 22
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Santé

Informations forums :
Inscription : novembre 2011
Messages : 102
Points : 69
Points : 69
Re salut MarcelG,

Citation:
Envoyé par MarcelG Voir le message
L'une des premières choses que l'on apprend dans ce genre de forum est l'absolue nécessité de mettre son orgueuil de côté.
Proposer une résolution, c'est certes aider celui qui pose une question, mais c'est aussi s'exposer aux remarques des autres membres.
Tout à fait d'accord ! Dans mon message précédent, j'ai remarqué après coup qu'il pouvait être mal interprété mais c'était un sincère remerciement car j'ai bien conscience que ce sont les remarques des utilisateurs confirmés qui me feront progresser.

Citation:
Il y 3 facteurs de progression à mon sens :
- la recherche par tous les moyens possibles de la réponse à ses questions
- la recherche d'une réponse aux questions posées par les autres en "creusant" ses propres acquis.
- l'amélioration de nos codes par la prise en compte des remarques des autres membres.
En conclusion : continue !
Toujours entièrement d'accord avec toi.
Je te remercie pour tes conseils et tes encouragements MarcelG, ça donne envie de s'y mettre plus encore !

Kaera*
__________________
.
Si la réponse d'un membre vous satisfait, pensez à voter en cliquant sur le pouce levé !
***
Un vote négatif sans justification, c'est dénué d'intérêt !
Accompagnez-le d'un message explicatif, cela évitera au membre visé de reproduire la même erreur. Bien plus efficace !

...An ka mandéw, mèt taw ek tan mwen pou sa fè an lô...
Kaera est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h03.


 
 
 
 
Partenaires

Hébergement Web