IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

StrConv vba excel [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Automaticien
    Inscrit en
    Septembre 2015
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 86
    Par défaut StrConv vba excel
    Bonjour à tous,

    J’essaie de récupérer des cellules de texte sous la forme d'un tableau d'octet, le but est d'avoir les caractères en code caractère pour les exporter après.

    J'ai fait ça mais j'ai une erreur de compatibilité de type, y a-t-il une autre fonction ou alors comment je peux faire pour indexer le buffer() en sachant que mes cellules ont toutes 6 caractères ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Test()
     
    Dim Buff() As Byte
     
    Buff() = StrConv(Range("A1:Z1"), vbFromUnicode)
     
    End Sub

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut



    Bonjour, bonjour !

    Comme indiqué dans l'aide VBA interne, cette fonction attend juste en entrée une chaîne de caractères,
    ce qui n'est pas le cas ici avec une matrice ! Rien qu'en consultant l'exemple de l'aide, donc une cellule à la fois …


    ______________________________________________________________________________________________________
    Je suis Paris, Charlie, …



  3. #3
    Membre éprouvé
    Homme Profil pro
    Automaticien
    Inscrit en
    Septembre 2015
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 86
    Par défaut
    oui si je mets une seul cellule cela fonctionne.

    comment je peux faire pour faire une boucle, de la première cellule vers la dernière cellule, et indexer le Buffer avec un index qui va de 6 en 6 ? j'ai essayé plusieurs truc mais j'ai des erreurs à chaque fois.

  4. #4
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Bonjour

    Il faudrait que tu nous donnes un petit exemple de données de départ et du résultat attendu pour nous guider.

    En attendant tu trouveras des informations sur ce site.

  5. #5
    Membre éprouvé
    Homme Profil pro
    Automaticien
    Inscrit en
    Septembre 2015
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 86
    Par défaut
    D'après ce que j'en ai lu la fonction StrConv ne convient pas pour faire ce que je voulais.
    J'ai donc fait une boucle FOR avec les fonctions Asc et Right pour me renvoyer à chaque caractère de la cellule le code de caractère, puis j'ai bouclé toutes les cellules dans une autre boucle FOR. Cela marche bien.

    Merci encore pour vos infos

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par revok Voir le message
    D'après ce que j'en ai lu la fonction StrConv ne convient pas pour faire ce que je voulais.
    J'ai donc fait une boucle FOR avec les fonctions Asc et Right pour me renvoyer à chaque caractère de la cellule le code de caractère, puis j'ai bouclé toutes les cellules dans une autre boucle FOR. Cela marche bien.

    Merci encore pour vos infos
    bonjour,
    je ne suis pas d'accord!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     Sub Test()
     
    Dim Buff() As Byte, txt As String, C As Integer
     txt = ""
     For C = 0 To Range("A1:Z1").Columns.Count - 1
     txt = txt & Trim("" & Range("A1").Offset(0, C))
     Next
    Buff() = StrConv(txt, vbFromUnicode)
     
    End Sub

  7. #7
    Membre émérite
    Homme Profil pro
    Directeur
    Inscrit en
    Avril 2003
    Messages
    724
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur

    Informations forums :
    Inscription : Avril 2003
    Messages : 724
    Par défaut
    Salut,

    le premier paramètre de strConv est un string, pas un tableau!

    Cordialement,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-Excel,VB6,Fichier texte]enregistrer un classeur excel..
    Par Tarul dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/01/2005, 13h09
  2. [vba-excel] Le temps de fermeture trop court ?
    Par Damsou dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/01/2005, 10h03
  3. [VBA-Excel]
    Par Damsou dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/01/2005, 10h17
  4. [VBA EXCEL] Réduire/Agrandir UserForms
    Par Fench dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/11/2003, 16h02
  5. [VBA Excel] Effacer rapidement une feuille
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/10/2002, 13h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo