begin process at 2012 02 15 23:10:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

Retour chariot Excel


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Retour chariot Excel

mercredi 16 août 2006 à 16:30:20 | Retour chariot Excel

Prototype51

Bonjour à tous

Voici mon problème :
J'ai un tableau Excel.
Je récupère le titre des colonnes du tableau dans une ComboBox (VBA).
Le problème c'est que lorsque je récupère des colonnes avec des titres contenant un retour chariot (Entrée) il le remplace dans la combo par deux carré ! Ensuite je dois retrouver la colonne contenant le titre sélectionné dans la combo, mais je n'y arrive pas puisque le titre est incorrect (il contient les deux carrés au lieux du retour chariot).

Exemple : §=carré
Titre de colonne : 
   nom
   composé
Affichage dans la combo :
   nom§§composé
La recherche s'effectue sur nom§§composé qui n'existe pas !

J'espère avoir été claire  mais surtout que vous pourrez m'aider
Merci
mercredi 16 août 2006 à 17:57:47 | Re : Retour chariot Excel

carvals

je ne veux pas m'avancer mais je ne suis pas certain que VBA gere les retours chariot

exemple si tu mets:

listbox1.additem "test" & Vblf & "a la ligne"

tu obtiens test#a la ligne

le seul moyen est donc de retirer les retours chariots.... sinon je suis preneur de la solution

carvals

mercredi 16 août 2006 à 19:08:52 | Re : Retour chariot Excel

michelxld

bonsoir

tu peux tester cette syntaxe

ComboBox1.AddItem _
    Application.WorksheetFunction.Substitute(Range("A1"), Chr(10), "")



bonne soiree
michel
mercredi 16 août 2006 à 20:04:27 | Re : Retour chariot Excel

KC62


Carval : Pour infos, il me semble que ce n'est pas vblf mais vbcrlf pour Carier Return Little files (chui pas sur de l'orthographe).

Ensuite si tu arrive a determiner la valeur ASCII de ton "carré", il te suffira de le supprimer avec le différentes option offert par le string.

L'explorateur d'objet pourra t'aider...

Je suis désolé mais souvenir ne me permette pas de me souvenir de tous les noms des fonction en VB. mais la solution est au bout du couloir.

Pour trouver le caractères ASCII de ton carré tu peux affiché chaque caractète ASCII dans une message box et tu veras bien le nombre qui apparait a la place de ton carré.

Je ne sais pas si un
if MonCarac=VbCrlf marcherais sinon il suffit de supprimer aprés le if le caractère génant.

Voila j'espere t'avoir aidé. Malgré mes trous de mémoire assez important en ce moment.

Bon courage

KC62

On a pas toutes les solutions de tous les probleme mais chaque probleme à ses solutions ...
mercredi 16 août 2006 à 23:56:50 | Re : Retour chariot Excel

MPi

Réponse acceptée !
KC62, pour ton info VbCrLf
Cr pour Carriage return (retour de chariot)
Lf pour Line Feed (Saut de ligne)

Je n'ai pas la solution, mais j'ai remarqué qu'en Excel si tu mets
Range("A1") = "Je saute" & vbcrlf & "une ligne"
ça met un petit carreau blanc en guise de caractère "illisible" ou "inaffichable"
Avec Range("A1") = "Je saute" & vbcrlf & "une ligne"
ça ne met pas de signe

vbLf est l'équivalent de chr(10)
vbCrl est l'équivalent de chr(13)
Il faudrait probablement que tu t'amuses avec ces deux caractères

Un peu comme dit MichelXLD, tu peux utiliser cette fonction d'Excel ou celle de VB
Entete = Replace(Entete, vbCrLf, vbLf)
ou
Entete = Replace(Entete, vbCrLf, chr(32))  ' chr(32) = espace

Et comme dit KC62, tu peux vérifier chaque caractère de ton entête en créant une petite fonction du genre
Sub Y()
    Dim strTemp As String, I As Integer
   
    For I = 1 To Len(Range("A1"))   '  Range("A1") contient l'entête en question
        strTemp = strTemp & Asc(Mid(Range("A1"), I, 1)) & vbTab & _
                    Mid(Range("A1"), I, 1) & vbCrLf
    Next
   
    MsgBox strTemp
End Sub


MPi
mercredi 16 août 2006 à 23:59:26 | Re : Retour chariot Excel

MPi

Oups ................   (pas vbCrLf mais bien vbLf)
Avec Range("A1") = "Je saute" & vbLf & "une ligne"
ça ne met pas de signe

MPi
jeudi 17 août 2006 à 09:49:21 | Re : Retour chariot Excel

KC62

Alors mille excuse !
ma gourré chef !

On a pas toutes les solutions de tous les probleme mais chaque probleme à ses solutions ...
jeudi 17 août 2006 à 09:56:17 | Re : Retour chariot Excel

Prototype51

Réponse acceptée !

Merci pour toutes vos réponses, elles m'ont beaucoup aidées !
Au final j'ai remplacé comme ceci :

cellule = Replace(LCase(Cells(9, i)), vbLf, "§")
crit3.AddItem (cellule)

Et lorsque je cherche sur cette valeur, je fais

leCritere3 = Replace(crit3.Text, "§", vbLf)
While LCase(Cells(9, i)) <> leCritere3
        i = i + 1
Wend

Merci encore et à bientôt

jeudi 17 août 2006 à 20:26:13 | Re : Retour chariot Excel

KC62

clique sur réponse acceptée !

merci

On a pas toutes les solutions de tous les probleme mais chaque probleme à ses solutions ...


Cette discussion est classée dans : excel, combo, titre, retour, chariot


Répondre à ce message

Sujets en rapport avec ce message

Retour Chariot [ par Moundir76 ] Bonjour, Je souhaite extraire le texte d'une cellule excel qui contient des sautes de lignes du genre : "coucou c'est mais j'obtiens "couco retour chariot excel [ par mery08 ] j'ai comme fichier de sortie pour mon programme c un fihier excel et donc les retour chariot y sont ecrit comme des saut vers une autre celleles, j'a Macro Excel : effacer les retour chariot dans cellule ? [ par foliop ] salutjai un fichier excel avec des lignes et des colonnesj'aimerai avoir une macro qui me supprime les retour chariot dans chaque cellulecomment faire Import Access sous Excel et Retour Chariot [ par tedtheOrs ] Bonjour,Je récupère des données issus d'une BDD access dans un classeur Excel!Apparement, le retour chariot n'est pas géré de la même facon dans les 2 retour chariot [ par chaima01 ] Bonsoir , j'ai un msflexgrid dans le quel j'ai affiché les enregistrements qui se trouve dans la table. au début, j'ai fixé le msflexgrid a 10 colon Retour chariot dans un fichier [ par BenMarcel ] Bonjour, je cherche un truc tout bête ... Je voudrais remplacer une chaine de caractère dans un fichier. La chaine est "\+retour chariot" ... Le probl retour de ligne dans excel [ par toledo9 ] Bonjour, J'aimerais insérer une nouvelle ligne en dessous dans mon code ça marche à l'envers. ex : Nom Premom etc je voudrais que lorsque je cliq retour chariot dans un msflexgrid sous vb6 [ par chaima01 ] bonjour , comment je peux faire un retour chariot dans un msflexgrid ? d'aprés les recherches que je vient de les faire , j'ai trouvé qu'il faut util Modifier le nom de l'application Excel [ par Tonete ] Bonjour, Je désire modifier le nom de l'application Excel (Microsoft Excel-Classeur1) dans la barre de titre en le remplaçant par _ulysse_. J'ai ins Reporter le titre d'un onglet dans Excel VBA [ par Crvo ] Bonjour à tous! Merci aux deux membres qui ont déja répondu à mes questions et qui m'ont faient progresser. VBA est un outil incroyable. J'ai un nouv


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales