Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2560 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Récupérer la première ligne d'une cellule

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Récupérer la première ligne d'une cellule

n°1883639
nathanc
Posté le 12-05-2009 à 11:34:17  profilanswer
 

Bonjour,
J'ai une cellule qui contient une adresse formatéee comme ceci
adresse 1
adresse 2
Code postal & ville
 
le tout dans une cellule.
 
J'aimerai récupérer chacune des informations dans une textbox.
Quelqu'un pourrait m'aider ?
Merci

mood
Publicité
Posté le 12-05-2009 à 11:34:17  profilanswer
 

n°1883680
olivthill
Posté le 12-05-2009 à 13:48:35  profilanswer
 

C'est quel VB ?
Ah, je vois le mot cellule, donc c'est peut-être du VBA pour Excel.
Alors, voici une macro (testée) qui fait cela :

Sub Macro1()
  s = Range("A1" ).Value
  s_lg = Len(s)
  i = 1
  Do While (i < s_lg)
    s_end_of_line = InStr(i + 1, s, vbLf)
    If (s_end_of_line > 0) Then
      MsgBox (Mid(s, i, s_end_of_line - i))
      i = s_end_of_line
    Else
      Exit Do
    End If
  Loop
  MsgBox (Mid(s, i, s_lg - i + 1))
End Sub

n°1884070
nathanc
Posté le 13-05-2009 à 11:48:07  profilanswer
 

Comment puis-je récupérer en varaible chaque ligne ?
j'ai essayé d'utiliser les mid(i) mid(s) et mid(s_lg - i + 1) mais cela ne fonctionne pas !
Merci de votre aide

n°1884085
olivthill
Posté le 13-05-2009 à 12:38:38  profilanswer
 

Citation :

j'ai essayé d'utiliser les mid(i) mid(s) et mid(s_lg - i + 1)


En fait, il y a deux cas :
 
1. Soit la ligne se termine par vbLf. C'est le cas de toutes les lignes sauf de la dernière.
Dans ce cas, il faut prendre Mid(s, i, s_end_of_line - i) comme dans mon code.
 
2. Soit la ligne ne se termine par vbLf parce que c'est la dernière ligne, ou bien parce qu'il n'y a qu'une seul ligne en tout dans la cellule.
Dans ce cas, il faut prendre Mid(s, i, s_lg - i + 1)) comme dans mon code.

n°1884120
nathanc
Posté le 13-05-2009 à 13:34:58  profilanswer
 

 a = (Mid(s, i, s_lg - i + 1))    (deuxieme ligne cellule)
  b = (Mid(s, i, s_end_of_line - i))      (premiere ligne cellule)
 
 MsgBox a
 MsgBox b
 
J'essaye de récupérer le texte dans les variables mais il m'indique erreur 5 ....


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Récupérer la première ligne d'une cellule

 

Sujets relatifs
Récupérer variables de javascript en php (Ajax)Récupérer variables de javascript en php (Ajax)
Copier coller une ligne excel sur autre feuille avec conditionsProblème fusion cellule tableau html
Groupé par les 3 première lettre, sqlHMTL, forcer plusieurs passages à la ligne
selection ligne au hasard[résolu] Récupérer résultat commande avec méthode run
php:récupérer des données d'une autre pagecomment changer une ligne sur plusieurs pages
Plus de sujets relatifs à : Récupérer la première ligne d'une cellule


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR