Commande d'effacer les lignes dont 1 colonne est vide

Re,

Quel résultat? c’est bon ou pas bon, développe un peu

Résultat négatif : il bloque à i avec message « erreur de compilation non définie »

Re,

Bon, dans mon classeur de mon post,
cela bloque OUI/NON
Après pour mon classeur, il te faut mettre i=9 au lieu de 2 (erreur de ma part, j’avais pas vérifié)
si c’est en recopiant mon code dans TON projet final
c’est que tu n’as pas donné un classeur modèle adéquat

alors oui j’ai copier coller ta macro dans mon projet réel qui comporte les même tableaux aux même endroit avec le même nom d’onglet que celui que j’ai posté ; la seule différence est que j’ai supprimé des pages qui ne servent pas à notre pb
dans le classeur de ton post : ou ça fonctionne

Re,
Donc le bug vient de ton projet final.
fais une copie image de ton onglet « Liste ouverture exo »
en prenant en compte les lettres des colonnes et les N° des lignes (ligne 1 à 15 par exemple)

J’ai figé des volets ; est ce que ça peut provenir de ça ?

Re,

Non pour les volets figés,
Je ne vois pas ou cela peu bloquer
Sans le vrai classeur ???

modifie tout en haut

Dim Ws As Worksheet, Wd As Worksheet, i%

le message était message « erreur de compilation variable non définie "

image

Re,
As-tu testé la proposition du post du dessus ?

Désolée, j’avais perdu ma connexion internet…
ta proposition fonctionne pas :

  • les lignes ne se suppriment pas
  • il supprime la formule de la colone C et ça c’est très ennuyeux

Re,
On va faire plus simple
Ton but, c’est de vider l’onglet « Liste ouverture exo » et de la remplir avec l’onglet « Liste fin exo »
Si oui, alors, pas besoin de toutes ces lignes de macro
J’attend ta réponse

oui et non
le but du projet est de remplir par exemple pour la 1ère fois en 2019

  • l’onglet liste ouverture exo puis de saisir le n° de rang dans l’onglet liste fin exo et les autres colonne s’alimentent toutes seules dans cet onglet à partir de l’onglet liste début exo
    en 2020, copie du fichier 2019 puis clique sur reprise des données N-1 : l’onglet fin exo alimente alors l’onglet liste ouverture exo puis supprime la saisie du rang de la colonne A de l’onglet fin exo (récupération avant suppression)

je ne sais pas si je suis très explicite

Si je peux me permettre une suggestion
Ne pouvant bénéficier de ton projet pour inclure les évolutions demandées et en lieu et place n’avoir qu’un extrait sommaire difficile pour nous de te faire des propositions qui fonctionne dans cet extrait et qui fonctionnera à coup sur dans le projet
Un code est lié effectivement à ce qu’il contient mais étroitement lié à son environnement de fonctionnement et notamment la structure du classeur dans lequel il est installé

Un exemple :

image

Ce que tu m’as transmis qui dysfonctionnais

Dans l’extrait qui en a été l’objet aucun souci

Mais dans le classeur projet cette anomalie
C’est sa structure qui en est la cause et plus précisément la fusion de colonne
Dans l’extrait pas de fusion dans le projet des fusions

Comment faire si on a pas l’intégralité du contexte
Le classeur que tu nous transmets doit être celui de ton projet sinon on aura du mal à avancer
Compose un projet bis identique qu’en a sa structure au projet original dans lequel tu mets un minimum de données non confidentielles
Il faut que lorsque tu récupères notre proposition tu n’est juste qu’à intégrer que l’ensemble des données sans toucher à sa structure
On aura plus de chance d’y arriver
A toi de voir ce que tu peux faire dans cet esprit

FFO,

j’ai dé fusionné la colonne P sur tes préconisations entre temps
OK je vous envoie l’intégralité du projet sans données confidentielles même si je n’ai pas trop envie que ça traîne sur internet

du coup j’ai aussi une macro d’impression qui va pas au bout et
un bout de code après le pb encours qui ne veut pas aller non plus
donc si vous avez le temps de tout corriger, n’hésitez pas PROJET_Carnet inventaire.xlsm (173,9 Ko)

Déjà ci-joint ton fichier avec la macro recopie qui fonctionne
J’ai, je te l’avait indiqué, changé la colonne pour déterminer dans l’onglet « Liste ouverture exo » la dernière ligne à traiter
Cette colonne doit impérativement avoir sur cette dernière ligne à traiter sa cellule non vide
J’ai choisi la colonne J qui correspond aux dates de saisie je suppose
A toi de me confirmer que cette date au niveau de la dernière ligne sera toujours présente sinon il faut prendre une autre colonne dans cette esprit mais laquelle
J’ai aussi modifié 2 noms d’onglet qui avait un blanc en fin ce qui provoquait un bug sur ces lignes :

Sheets(« Liste achat naissance »).Select
Sheets(« Liste Vente »).Select

Dans le nom de chaque ligne de code pas de blanc en fin mais présent dans celui de l’onglet donc pas bon !!!
C’est corrigé

Le code fonctionne et va à son terme

Fais des essais et dis moi

Pour l’impression tu utilises un formulaire pour choisir ce que l’on souhaite imprimer mais derrière le bouton « Imprimer » aucune procédure
Est ce à niveau que tu attends de notre part une aide ?

Merci de nous confirmer
PROJET_Carnet inventaire.xlsm (176,0 Ko)

Ci-joint ton fichier avec une proposition pour l’impression des documents

Onglet « Couverture » click sur le bouton « IMPRIMER LE DOCUMENT »
Choisi le ou les documents puis bouton « Imprimer »
J’ai aussi programmé le bouton « Tous sélectionner » qui maintenant est opérationnelle
Fais des essais

Dis moi si cela te convient

PROJET_Carnet inventaire.xlsm (178,7 Ko)

la 2ème version fonctionne au poil

par contre :

  • je n’ai pas bien compris l’histoire de la colonne J car je ne vois pas de date saisie sur la dernière ligne
  • pour la modification des 2 noms d’onglets ; j’ai pourtant fait un copie coller pour éviter de me tromper
  • merci pour l’impression, j’avais pas tout terminer ; c’est cool

Question qui n’a rien à voir; mon service informatique vient de m’annoncer que mon ordinateur va être remplacé car il est vérolé.
est-ce que votre forum peut véhiculer des virus ?

« je n’ai pas bien compris l’histoire de la colonne J car je ne vois pas de date saisie sur la dernière ligne »

Avant l’exécution de mon code de nettoyage voici ce qu’il y a comme données onglet « Liste ouverture exo »
En jaune la colonne J

La dernière ligne colonne « J » a bien une date je ne l’ai pas inventé

Celle-ci donc semble appropriée pour déterminer la dernière ligne à traiter mais sur cet exemple

Est ce qu’il en sera toujours de même ?
C’est à toi de me dire

Dans le doute qu’elle colonne aura systématiquement une donnée en dernière ligne

Il en va de la fiabilité du traitement du nettoyage

Merci de me dire

Pour le nom des onglets regardes l’onglet « Liste Vente » ici :

le fond gris dépasse le nom à droite et pas à gauche car à droite il y a un blanc

le même sans le blanc à droite :

En conclusion avec l’original les résolutions sont nettement plus facile

Les virus sont partout
Maintenant ce n est pas forcément le forum qui t à infecté
Il faut être vigilant concernant les liens ou les fichiers à telecharger en s assurant de sa source
Et surtout surtout c est ma manière d agir si il y a doute ne pas cliquer !!!
Et bien sûr avoir un bon antivirus

quand tu parles de dernière ligne tu parle la dernière ligne remplie, je comprend mieux maintenant

en fait plus précisément mon ordi est corrompu (vérolé est un mauvais terme qu’ils m’ont donnée) ; ils se sont aperçu du pb lorsqu’ils ont constaté que mon antivirus ne tournait pas ; l’antivirus ne s’était pas installé correctement … mais ça c’est leur job et pas le mien

en tout cas merci