Macro pour modifier automatiquement des éléments sur deux feuilles différentes

Nicolas Lepauvre

XLDnaute Junior
Bonjour à tous !
Je souhaite faire la chose suivante.
Si on effectue une modification dans l’une des colonnes B, C, D ou E de la feuille1, elle s‘actualise automatiquement sur la feuille2.
De même si on effectue une modification dans l’une des colonnes E ou D de la feuille2, elle devrait s‘actualiser automatiquement sur la feuille1. En plus si on fait une nouvelle inscription sur la feuille2 elle devrait apparaître sur la feuille1.
J’ai écrit un code dans un module mais il ne se passe rien.
De ce fait je sollicite vos aides précieuses.
Je vous remercie d’avance.
 

Pièces jointes

  • Feuil1_vs_Feuil2.xlsm
    20.7 KB · Affichages: 41

Nicolas Lepauvre

XLDnaute Junior
Bonjour Nicolas,

Vous allez vous rendre vraiment malade à force de tripatouiller votre fichier.

Je vois que vous traitez les cellules une par une : très mauvaise méthode car c'est très lent.

Il faut agir sur le tableau VBA en ajoutant un espace (quel intérêt ?) quand le texte est vide :
Code:
  For i = 0 To UBound(a)
    rest(i, 0) = "'" & a(i)
    s = Split(b(i), Chr(1))
    For j = 0 To 6
      rest(i, j + 1) = "'" & IIf(s(j) = "", " ", s(j)) 'apostrophe + espace si vide
  Next j, i
Fichier (8).

A+
Bonjour Job75, bonjour le forum
Je veux maintenant lors de la copie de la feuille 2 vers la feuille 1 inscrire sur la feuille 1 en colonne D (Ville) <<’n’existe pas>> avec l’apostrophe.
En modifiant votre code, il a l’air de fonctionner. Me suis-je efforcé à y faire des erreurs ou ai-je compris le principe?
Ceci étant toujours respecté.
1) une apostrophe à chaque élément de cellule de la Feuille 1. Exemple : <‘NomA5>
2) Ce pendant si la cellule de la Feuille 1 est vide, il faut qu’il ait une apostrophe suivi d’un espace vide.
Exemple : <’ >. Sauf dans la colonne D (inscription : <<’N’existe pas>>)
Merci.
 

Pièces jointes

  • Feuil1_vs_Feuil2(8).xlsm
    28.3 KB · Affichages: 16

job75

XLDnaute Barbatruc
Bon puisque c'est la der des der...

Il n'y a aucune boucle à ajouter, juste une ligne à modifier :
Code:
      rest(i, j + 1) = "'" & IIf(s(j) = "", IIf(j = 2, "N'existe pas", " "), s(j)) 'apostrophe + espace (ou texte en colonne D) si vide
 

Pièces jointes

  • Feuil1_vs_Feuil2(9).xlsm
    33.8 KB · Affichages: 17

Discussions similaires

Statistiques des forums

Discussions
312 202
Messages
2 086 180
Membres
103 152
dernier inscrit
Karibu