Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : urgent!! [ Langages dérivés / VBA ] (inge68)

mercredi 23 avril 2008 à 11:44:06 | urgent!!

inge68

Bonjour tout le monde
Je suis encore debutant en VBA et j'arrive pas a trouvé la solution aidez moi SVP, c'est assez urgent. 
ma cellule est la suivante:

A80  X24.70
A85 X24.33
A90    X23.69
A95 X22.73
A100   X22.40
A105  X21.99
A110   X21.83
A115X22.63
A120   X23.28

Je voudrais separer les A.. avec les X.. et les mettre chacune dans une colonne comme suite:
 A                  B

A80  X24.70
A85 X24.33
A90    X23.69
A95X22.73
A100    X22.40
A105  X21.99
A110      X21.83
A115X22.63
A120   X23.28
Je pense que c'est un probleme relativement simple pour vous!
Merci d'avance.

mercredi 23 avril 2008 à 12:39:13 | Re : urgent!!

zavier666

Réponse acceptée !
globalement, je procéderai ainsi

=> placer le contenu de la cellule dans une chaine de caractère
=> utiliser split sur le caractère X pour séparer la chaine en deux
=> utiliser la fonction trim pour supprimer les espaces qui servent pas
=> remplir ls deux colonnes


--------------------------------------------------
Toujours + de VB et d'API => APi @ le Loupe
http://apialaloupe.free.fr


mercredi 23 avril 2008 à 14:28:14 | Re : urgent!!

inge68

j'ai essaié la fonction split comme suite
expression = Cells(1, 1).Value
Cells(1, 2).Value = Split(expression, "X")
donc j'ai ttou ce qui est avant X qui par dans la cellule 2 par contre comment faire pour recuperer tout ce qui est apres le X

mercredi 23 avril 2008 à 15:20:34 | Re : urgent!!

inge68

j'ai encore essaié ça

Dim expression1 As String, expression2 As String, no As Long
expression1 = Cells(1, 1).Value 'placer le contenu de la cellule ds une variable
expression2 = Trim(expression) 'enlever les espaces
Cells(1, 1).Value = Split(expression2, "X") 'permet de prendre tt ce qui est avt X

j'ai rajouter c'est 2 lignes mais ca marche pas il connait pas les fonctions cherche et remplacer:
no = cherche(expression2, "X") 'permet d'avoir la position du caractere de X
Cells(1, 2).Value = REMPLACER(expression2, 1, no-1, "") 'remplace les caracteres 1 à "no-1" par ""

aidez moi svp j'ai passez une bonne partie de ma journée la dessus sans solution merci


mercredi 23 avril 2008 à 15:58:09 | Re : urgent!!

lolokun

Réponse acceptée !
Bonjour,

Voici une petite aide concernant le foncitonnement de la fonction split(tu aurais pu trouvé par toi-même en cherchant un peu sur goole) :

Découper une chaîne de caractères :

Il arrive que vous deviez traiter une ligne d'un fichier ou autre source de données, en la découpant en fonction d'un séparateur. Une fonction VB vous permet de faire cela : Split. Cette fonction s'utilise de la manière suivante : monTab = Split(maChaine,monSéparateur).

Comme vous pouvez le voir, la fonction Split retroune un tableau (de base 0) qui contient dans chaque case les différents champs de votre châine.

Un petit exemple pour eclaicir tout ça :

Dim monTab() As String

monTab = Split("Champ1@@@Champ2@@@Champ3","@@@")

Comme résultat vous obtiendrez un tableau à 3 cases (de 0 à 2) avec monTab(0) = "Champ1", monTab(1)="Champ2", monTab(2)="Champ3". Le séparateur peut être aussi long que vous le souhaitez.



L'expérience, c'est une connerie par jour, mais jamais la même..

mercredi 23 avril 2008 à 16:57:57 | Re : urgent!!

inge68

Réponse acceptée !
Merci lolokun, je comprends mon erreur, mais quand j'ai corrigé j'ai quand meme eu une ptite erreur de compilation : tableau attendu et il me souligne tableau(0)

Dim expression1 As String, expression2 As String, tableau As string
expression1 = Cells(1, 1).Value 'placer le contenu de la cellule ds une variable
expression2 = Trim(expression) 'enlever les espaces
tableau = Split(expression2, "X") 'permet de prendre tt ce qui est avt X
Cells(1, 1).value = tableau(0)
Cells(2, 1).value = tableau(1)

en attendant j'ai reussi bidouiller pour avoir qualque chose qui marche

Dim expression1 As String, expression2 As String
'expression = Cells(83, 1).Value
'lui = Trim(expression)
'Cells(83, 1).Value = Split(lui, "X", -1)
'Cells(83, 2).Value = Right(lui, 6) ' j'utilse Right pour prendre les 6 derniers caracteres donc (X--.--)

Merci pour votre aide, mais j'aimerai bien savoir pourquoi le code avec les tableau ne marche pas!!

mercredi 23 avril 2008 à 17:02:47 | Re : urgent!!

lolokun

Réponse acceptée !
Ta délaration de tableau n'est pas bonne, il faut mettre les () :
Dim Tab()As String

L'expérience, c'est une connerie par jour, mais jamais la même..



Cette discussion est classé dans : urgent, x24, x23, x21, x22


Répondre à ce message

Sujets en rapport avec ce message

URGENT Gestion des interface LTP et COM d un PC sous VB [ par ponch ] -quel sont les differents modes d'utilisation du port parallele sur un PC ?-Presenter succinctement le fonctionnement du port serie-VB ne possedant pa lire un wav urgent [ par Nic ] comment faire pour lire un fichier *.waven cliquant sur un command boutton Hexadecimal Tres urgent [ par Nic.C ] Comment fait t'on un editeur hexa tous simple ToolTipText: urgent!!! [ par florence ] Bonjour.Je debute en VB6 et g un petit pbme: je voudrai savoir si l'on peut affecter une bbulle a chaque item d'une liste box( j'arrive juste a affich ListBox: Urgent!!! [ par flo ] Dans ma liste box, la fin des champs trop longs n'est pas visible. Peut on , en rentrant les differents items, les rentrer sur 2 lignes?Merci ( ma que urgent!!! imprimer une page [ par flo ] slt,Je dispose d'un webbrowser dans mon projet mais je n'arrive pas a imprimer son contenu...Comment faut il s'y prendre?Merciflo Urgent : Excel & VB [ par Webmineur ] bonjour,comment puis-je utiliser un worksheet excel dans une form VB ?j'arrive à l'insérer dans la form mais je n'arrive pas à l'utiliser. Quand j'exe **URGENT** Comment savoir si l'utilisateur ouvre un certain fichier? **URGENT** [ par WebMagique ] J'aimerais savoir comment savoir(!) si l'utilisateur ouvre un certain fichier de windows... (ex.: "C:\windows\bureau\jeux")Je cherche à faire un progr masquer barre tâches windows: urgent!!! [ par flo ] salutexiste t'il un moyen de masquer la barre des taches windows aux utilisateurs de mon application?merci beaucoupflo Graphique pour excel.URGENT!!! [ par ben ] Mon programme cree une feuille graphique.J'arrive a nommer mon graphique mais mon probleme est que je n'arrive pas a nommer ma nouvelle feuille graphi


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,343 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.