REPT+CONCATENER-->bug sur certaines valeurs

hctad1

XLDnaute Junior
Bonjour à tous,

c'est mon 1er message chez vous. J'utilise excel à haute dose dans le cadre de mon activité combiné à mysql (et je vous conseille sqlyog pour extraire la donnée...au passage ;) , en plus c'est gratuit)

Bon hier soir au menu, extraction de donnée de la BDD et mise en forme pour import dans mon soft de compta préféré.
la problèmatique est d'obtenir un fichier txt sans délimiteur (ie largeur de champs fixe).
donc s'il me faut 13 caractere dans un champs montant, je combine un REPT et une concatenation. Jusque là rien d'extraordinaire.
Maintenant il me faut le montant HT et le montant de la TVA.
J'ajoute un soupcon d'ARRONDI sur 2 decimales...
et la patrata, j'ai qq valeurs qui 'bugguent'...

Si je remplace mon calcul de TVA par son résultat dans la fonction REPT+CONCAT ça marche....

Bon j'ai pas des milliers de lignes a traiter alors j'ai contourné le pb mais j'avoue que ça m'a rendu perplexe.

Si un expert sait me dire d'ou vient cette erreur, je lui en serais gré.

Nicolas
 

Pièces jointes

  • exemple-forum.xls
    28 KB · Affichages: 62
  • exemple-forum.xls
    28 KB · Affichages: 70
  • exemple-forum.xls
    28 KB · Affichages: 66

RENAUDER

Nous a quitté
Repose en paix
Re : REPT+CONCATENER-->bug sur certaines valeurs

Bonjour,
Je n'ai pas utilisé la même formule que toi.
=REPT("0";13-NBCAR(ARRONDI(A2-(A2/1.196);2)))&ARRONDI(A2-(A2/1.196);2)
Cela fonctionne pour toutes les valeurs où il y avait une valeur d'erreur.

Par contre l'erreur que tu avais est bizarre car par exemple
43.1 Ok
43.2 et 43.3 Pas bon
43.4 OK
Apparement pour les cas qui ne sont pas bons, la formule partielle
=NBCAR(A93-ARRONDI((A93/1.196);2)) retourne une valeur supérieure à 13
alors 13-16=-3 et le REPT ne fonctionne qu'avec des valeurs positives.

43.2; 43.3 renvoie 16
 

Pièces jointes

  • exemple-forum.xls
    41 KB · Affichages: 74
  • exemple-forum.xls
    41 KB · Affichages: 76
  • exemple-forum.xls
    41 KB · Affichages: 73
Dernière édition:

esftel

XLDnaute Occasionnel
Re : REPT+CONCATENER-->bug sur certaines valeurs

Bonjour,

pour la forme, j'ai peut etre un solution à ton problème avec la formule suivante :

=REPT("0";13-NBCAR(CTXT(ARRONDI(CNUM(A2)-(A2/1,196);2);2)))&CTXT(ARRONDI(CNUM(A2)-(A2/1,196);2);2)

voir fichier joint

A+
 

Pièces jointes

  • exemple-forum.xls
    45 KB · Affichages: 62
  • exemple-forum.xls
    45 KB · Affichages: 62
  • exemple-forum.xls
    45 KB · Affichages: 64

hctad1

XLDnaute Junior
Re : REPT+CONCATENER-->bug sur certaines valeurs

Salut,
je vais regarder ta formule mais pour ce qui concerne le point/virgule il s'agit d'un paramétrage de mon excel.
En effet les bases de données n'aiment pas bien les put**ns de virgules à la française (moi non plus d'ailleurs)..
 

Statistiques des forums

Discussions
312 302
Messages
2 087 039
Membres
103 439
dernier inscrit
julienpipiou