Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro avec une fonction si avec plusieurs réponses

  • Initiateur de la discussion Initiateur de la discussion Ophé
  • Date de début Date de début

Ophé

XLDnaute Junior
Bonjour le forum,

je viens encore une fois pour une mission "macro" !!
Cette macro est peut-être simple, mais je bloque principalement que une création de ligne.

Je m'explique :

J'ai en colonne A des noms de techniciens en initiales (3lettres), si il y a plusieurs techniciens, un signe "+" les sépare.
Le but de la macro est :
Si il y a un plus dans la cellule A toute la ligne est copiée une fois, on divise les chiffres dans les colonnes S et T; et on supprime l'un des noms pour l'écrire en colonne X.
Idem s'il y a deux + (donc 3techniciens) mais on copie 2 fois la ligne et on divise par 3.

Je joins deux fichiers qui définissent plus clairement ce que je voudrais faire; j'ai mis des explications plus "claires" dessus.

Merci d'avance, même si ce n'est pas évident, pour moi en tout cas.

Ophé
 

Pièces jointes

  • techniciens départ.xls
    25 KB · Affichages: 100
  • techniciens fin.xls
    40.5 KB · Affichages: 95
  • techniciens départ.xls
    25 KB · Affichages: 104
  • techniciens fin.xls
    40.5 KB · Affichages: 101
  • techniciens départ.xls
    25 KB · Affichages: 106
  • techniciens fin.xls
    40.5 KB · Affichages: 97

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Je teste les deux macros elle ne fonctionne pas je ne sais pas pourquoi, je vous lie encore un fichier, mais je ne vois pas le problème!
Merci encore de m'aider

Cdlt

Ophé
 

Pièces jointes

  • Classeur1.xls
    48 KB · Affichages: 195
  • Classeur1.xls
    48 KB · Affichages: 201
  • Classeur1.xls
    48 KB · Affichages: 172

mromain

XLDnaute Barbatruc
Re : Macro avec une fonction si avec plusieurs réponses

Je teste les deux macros elle ne fonctionne pas je ne sais pas pourquoi, je vous lie encore un fichier, mais je ne vois pas le problème!
Merci encore de m'aider

Cdlt

Ophé

je te joins le même fichier avec 2 feuilles (AVANT et APRES)
si je vois bien , les ligne où il n'y avait que 3 lettres en colonne A n'ont pas été modifiées
Est-ce que je me trompe ?

a+
 

Pièces jointes

  • Classeur1.zip
    25.6 KB · Affichages: 28
  • Classeur1.zip
    25.6 KB · Affichages: 29
  • Classeur1.zip
    25.6 KB · Affichages: 30

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Bonjour,

merci encore à tous les 2 !! Je testerais tout cela demain car excel ne répond plus (on travaille avec tellement de qualité ... lol) !!
Je pense que c'st mon fichier qui a un problème car vos macros fonctionnent très bien sur de "petits" fichiers, donc je vais faire en sorte de trouver d'où ça vient.

Merci encore à tous les 2

Ophé

ps: merci pour le compliment mdr
 

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Merci mromain,

en effet ça fonctionne sur le petit fichier c'est ce que je veux
j'essaierais tout ca demain !!
Merci encore

Ophé
 

Gruick

XLDnaute Accro
Re : Macro avec une fonction si avec plusieurs réponses

Bon,

Ton dernier fichier, et contrairement à ce que tu nous annonçait, est un maelström de mélanges fouillis et hétéroclites amalgamés dans le désordre le plus confus... bref le bazar.
En effet, ta colonne A regroupe autre chose que des groupes de 3 lettres séparés si besoin est par des +.
Pas étonnant que ça ne marche pas, et Romain sera sans aucun doute d'accord avec moi.

Pas sérieux tout ça.

Je m'éclipse.

Gruick

Edit : Bien évidemment, aucune méchanceté dans mes propos, surtout que tu dois travailler avec d'autres, et que tes sources sont sans doute à retraiter.
 
Dernière édition:

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Bonjour,

je suis en train de faire des tests avec ces codes ;
j'ai une petite question, faut-il que toutes les cellules en A contiennent 3, 7 ou 11 caractères pour que ça fonctionne? Et si oui si j'effectue un filtre, la macro peut-elle fonctionner uniquement sur les données filtrées?

Je sais bien que ces fichiers ressemblent à un "bazar incompréhensible" mais je fais avec ce que l'on me donne, je ne peux modifier les fichiers sources et contrôler ceux qui les mettent à jour.. malheureusement lol !!
Merci beaucoup

Ophé
 

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Re, apparament, à ce que je vois le code beug dès qu'une cellule ne comporte pas le bon nombre de caractères même si les données sont filtrées.

Cdlt

Ophé
 

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Est ce possible de rajouter dans la macro que si la cellule ne contient pas de "+" on ne s'en occupe pas????

Je vous embete encore.

Merci d'avance.

Ophé
 

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Bonjour mromain,

A vrai dire j'ai testé avec les deux, et dernièrement je suis resté sur celle de Gruick mais je crois que les 2 font pareil.

Cdlt

Ophé
 

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Re,
autant pour moi,
j'ai rereretesté lol et je crois que la tienne fonctionne malgré les caractères plus long
je vais réessayer sur mon "gros" fichier.

Merci encore
 

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Re mromain,

Je viens de la testé et un beug apparait sur cette partie :
With ThisWorkbook.Sheets("base montage")

Ce que je ne comprend pas puisque ma feuille s'appelle bien "base montage" sans espace superflux??? Vois-tu une explication??

Ophé
 

mromain

XLDnaute Barbatruc
Re : Macro avec une fonction si avec plusieurs réponses

re,

au pire, si tu lances la macro depuis la feuille à traiter ("base montage"), remplace
Code:
With ThisWorkbook.Sheets("base montage")
par
Code:
With ActiveSheet

a+
 

Ophé

XLDnaute Junior
Re : Macro avec une fonction si avec plusieurs réponses

Re,

c'est bon, ton code fonctionne parfaitement.

Mon dernier problème est que j'effectue une macro pour transformer les noms en initial puis une deuxième pour les retransformer en nom, mais je souhaiterais que la macro ne touche QUE la colonne A j'ai donc écris :
Columns("A:A").Select
avant mes remplacements, mais ça me modifie quand même les noms sur toute la page,
que dois-je mettre comme code sachant que le code global donne :
etc

Merci encore de ton aide, et du temps que tu m'accorde.

Ophé
 

Discussions similaires

  • Question Question
Microsoft 365 Fonction filtre avec si
Réponses
40
Affichages
2 K
Réponses
5
Affichages
326
  • Question Question
Microsoft 365 Publipostage avec Excel
Réponses
10
Affichages
442
  • Question Question
Microsoft 365 Bug sur une macro
Réponses
6
Affichages
264
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…