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

Recueillir des données provenant de BOB

  • Initiateur de la discussion Initiateur de la discussion Aloha
  • 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 !

Aloha

XLDnaute Accro
Bonjour,

Dans le fichier ci-joint est représenté un tableau tel que le programme de comptabilité BOB sait les exporter en Excel.

Ces données, je dois les transcrire dans un autre tableau, compte par compte (pas les sous-comptes, uniquement les comptes "Compte A", "Compte B", etc.

Malheureusement, premièrement les données (c'est la colonne Soldes qui m'intéresse) sont considérés comme texte (en les multipliant par 1 ils deviennent des chiffres: cf colonne I, sauf 2 où il est marqué VALEUR), et, deuxièmement la bonne valeur n'est pas affichée parce que cette VALEUR dérange.

Je n'arrive pas à comprendre la différence entre les cellules qui se laissent multiplier par 1 et celles qui produisent VALEUR.

Merci d'avance de bien vouloir me conseiller comment maîtriser cette tâche.

Bien à vous

Aloha
 

Pièces jointes

Re : Recueillir des données provenant de BOB

Aloha, Aloha 🙂

Ta méthode est la bonne si la virgule est ton format de séparation
en ce qui concerne la référence Valeur il faut aussi supprimer l'espace séparateur de Milliers (considérer comme texte et non comme valeur)

il faut
Sélectionner les Colonnes
Onglet Accueil/Rechercher et Sélectionner/Remplacer
Rechercher: Espace
Remplacer: Rien

Bonne Journée
 

Pièces jointes

Re : Recueillir des données provenant de BOB

Merci beaucoup,

Cette opération requiert donc une intervention humaine. Ne peut-on pas imaginer un système où aucune intervention ne serait nécessaire?

Bonne après-midi

Aloha
 
Re : Recueillir des données provenant de BOB

Salut Aloha, le Forum

Peut-être avec ce Code


Bonne Journée
 
Re : Recueillir des données provenant de BOB

Bonjour,

Je réponds avec un certain retard; mes excuses
Merci pour le code
J'ai réussi à le faire fonctionner mais le résultat reste le même: les chiffres >999 et ayant un espace pour séparer les milliers ne se laissent toujours pas multiplier par 1.

Par contre, j'ai trouvé une solution par formule:
p.ex.: =SI(H24>"";SUBSTITUE(H24;CAR(160);"")*1;0)

Bonne journée

Aloha
 
Re : Recueillir des données provenant de BOB

Bonjour,
une extension du problème, visible dans le fichier joint
La solution développée ci-haut, je dois l'appliquer à différents dossiers, et l'un des dossiers diffère un peu des autres en ce que la balance croisée distingue jusqu'à 3 groupes, X, Y, Z dans mon fichier exemple, qui ne contient que des données pour X et Y., les libellés contenant les données pouvant différer (dans l'exemple ll manque p.ex. les libellés 3, 6, 8 parce qu'il n'y a pas de données à afficher), et je dois récupérer les données pour chaque groupe séparément.
Dans la feuille Excel produite par Bob je n'ai l'information du groupe qu'une seule fois, alors qu'il me le faut pour tous les libellés pour pouvoir récupérer les données moyennant formule.
Comment faire pour remplir les cellules en jaune dans la feuille "Original" tel que je l'ai fait manuellement dans la feuille "Modif."?
Evidemment, cela se fait rapidement manuellement, mais je préfère éviter tant que possible les interventions manuelles, sources d'erreurs.
Merci d'avance pour votre aide future
Aloha
 

Pièces jointes

Re : Recueillir des données provenant de BOB

Salut Aloha, le Forum

Désolé je n'avais pas vu tes derniers messages

Je te renvoi le Fichier avec les modifications demandées

en ce qui concerne les chiffres supérieur à 999 c'est normal il faut ensuite convertir le texte en Nombre avec la variable CDBL

Code:
Sub EssAi()
Dim DerLig As Long, i As Long, C As Range
DerLig = Range("B" & Rows.Count).End(xlUp).Row
For i = 12 To DerLig
    If Range("B" & i) = "" Then Range("B" & i) = Range("B" & i - 1)
Next i
Application.ScreenUpdating = False
For Each C In Range("I11:K33")
C.Replace What:=" ", Replacement:=""
'C.Replace What:=",", Replacement:="." 'Ligne à rétablir si symbole décimal est le Point et non la virgule
C = CDbl(C.Value)
Next C
Application.ScreenUpdating = True
End Sub

Bonne Journée
 

Pièces jointes

- 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
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…