Microsoft 365 Bug dans formule VBA

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

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

BOILEAU

XLDnaute Junior
Bonsoir à tous,
C'est une formule créée par @fanfan38 en début d'année. Je ne sais pas pourquoi cette formule se met à buguer !
J'espère que je vais être claire dans mes explications, car le fichier Excel joint (sans nom) est complexe.
> Dans la feuille "Import les Recettes" les cases entourées en rouge de la colonne I non pas été remplies.
Le remplissage des cellules de ce tableau se fait en cliquant sur le bouton "Remplir les colonnes vides de la feuille" avec la macro affectée = "RemplirColonneVide"
Normalement ces cellules devraient s'incrémenter des codes produits existants dans la feuille "CODES PRODUITS". cellules entourées en rouge colonne A.
> Comme ces cellules en rouge de la feuille "Import les Recettes" ne sont pas remplies, Les lignes de facturations correspondantes ne sont pas intégrées dans la construction du tableau de la feuille "IMPORT DANS COGILOG". (exemple : la ligne 38 devrait être la ligne de facturation 38 de la feuille "IMPORT LES RECETTES...). La concordance des deux numéros de lligne est un pur hasard !!!!!
Ce tableau "IMPORT DANS COGILOG" se construit automatiquement par la formule VBA "FormatageTableauCogilog" déclenché par le bouton "LANCER LA CONSTRUCTION FEUILLE IMPORT DANS COGILOG" de la feuille "IMPORT LES RECETTES".
A votre disposition.
Merci d'avance pour votre aide.
Bonne soirée
Frédéric
 

Pièces jointes

Solution
Bonsoir BOILEAU,

Voici ce que j'ai fait dans la macro "RemplirColonneVide" :

1) remplacé tous les Ž par é (ils sont causés sur mon PC par votre version MAC)

2) remplacé le code :
VB:
Chambre = LCase("L" & Split(Split(Cells(L, "J"), ", L")(1), " , ")(0))
par :
VB:
Chambre = LCase(Split(Cells(L, "J"), ", ")(1))
Chez moi le résultat est correct.

A+
Bonsoir BOILEAU,

Voici ce que j'ai fait dans la macro "RemplirColonneVide" :

1) remplacé tous les Ž par é (ils sont causés sur mon PC par votre version MAC)

2) remplacé le code :
VB:
Chambre = LCase("L" & Split(Split(Cells(L, "J"), ", L")(1), " , ")(0))
par :
VB:
Chambre = LCase(Split(Cells(L, "J"), ", ")(1))
Chez moi le résultat est correct.

A+
 

Pièces jointes

Bonjour,
J'ai détecté que quelqu'un a du lancer une recherche du caractère "é" dans le programme pour le remplacer par le caractère "z". J'ai donc remplacé tous les z par des é.
Ensuite le programme s'est planté sur le numéro de l'agence avec l'instruction split.
J'avoue ne pas comprendre l'erreur du coup j'ai contourné l'obstacle en recherchant le numéro de l'agence d'une autre façon.
Comme je n'ai pas appréhendé totalement la logique de l'application, il vaut mieux bien vérifier que tout fonctionne comme tu le désires.
Bonne continuation
Chris
 

Pièces jointes

Bonjour,

Un grand merci à vous deux. La solution de Job75 est parfaite.
Job75, pour ne pas mourrir idiot et essayé de comprendre un peu plus le code VBA et si vous avez un peu de temps, pourriez-vous m'expliquer ce que cette nouvelle ligne de code apporte par rapport à l'ancienne ?
Merci d'avance.

Frédéric
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
115
Réponses
9
Affichages
775
Réponses
11
Affichages
786
Réponses
4
Affichages
431
Réponses
6
Affichages
123
Réponses
72
Affichages
1 K
Réponses
1
Affichages
166
Réponses
10
Affichages
134
Réponses
9
Affichages
386
Retour