Microsoft 365 Bug dans formule VBA

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

  • IMPORT COGILOG PROFORMA 04_23.xlsm
    84.8 KB · Affichages: 9
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+

job75

XLDnaute Barbatruc
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

  • IMPORT COGILOG PROFORMA 04_23.xlsm
    69 KB · Affichages: 2

CHRIS1945

XLDnaute Occasionnel
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

  • IMPORT COGILOG PROFORMA 04_23-test2.xlsm
    71 KB · Affichages: 2

BOILEAU

XLDnaute Junior
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
 

Discussions similaires

Réponses
9
Affichages
505
Réponses
11
Affichages
501
  • Résolu(e)
Microsoft 365 Tri et Import
Réponses
4
Affichages
164
Réponses
10
Affichages
200
Réponses
2
Affichages
446