Accueil > Forum > > > > correspondance dans un tableaux
correspondance dans un tableaux
mercredi 10 octobre 2007 à 19:00:58 |
correspondance dans un tableaux

lolpop
|
Bonjour, j'aurai une petite question. j'ai un tableau qui contient les caracteres de l'alphabet de 0 a 25 pour a à z. Je voudrai a partir d'un caractere obtenir le nombre lui correspondant dans le tableaux. Par exemple a partir du caractere z obtenir 23 et du caractere b obtenir 1. Mais je ne sais pas comment faire, ce que je sais faire c'est l'inverse moi :) Pourriez vous m'aider? Merci
|
|
mercredi 10 octobre 2007 à 20:03:23 |
Re : correspondance dans un tableaux

jack
|
Salut Je suppose que tes lettres ne sont pas classées alphabétiquement dans ton tableau ... (ton exemple z:23 et b:1 est troublant)
Pour les tableaux, aucune autre solution que de scruter chaque élément du tableau pour retrouver celui qui t'intéresse : For r = 0 To 25 If monTableau(r) = LaLettreQueJeCherche Then MsgBox "La lettre """ & LaLettreQueJeCherche & """ est dans monTableau(" & CStr(r) & ")" Exit For End If Next r Avec une dimension à 26 éléments, cette boucle ne devrait pas allourdir tes programmes.
Une autre solution consiste à utiliser une Collection à la place d'un tableau. Une Collection permet d'accéder aux données : - Soit par l'index maCollection(23) - Soit par le contenu maCollection("z") Condition : Il faut que le contenu de chaque élément soit unique Problème : Une collection est lente pour les méthodes Add et Remove, par contre, elle est plus rapide en recherche.
Vala Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
|
|
mercredi 10 octobre 2007 à 20:09:33 |
Re : correspondance dans un tableaux

Mikaels35
|
Sachant que la valeur Asc("a") est égale à 97
n=Asc("b")-97 -> 1
n=Asc("z")-97 -> 25
@+
|
|
mercredi 10 octobre 2007 à 21:39:35 |
Re : correspondance dans un tableaux

lolpop
|
Réponse acceptée !
merci, mais si j'agrandi mon tableau en rajoutant les majuscules et les chiffres de 0 a 9 :) lol
|
|
mercredi 10 octobre 2007 à 22:36:54 |
Re : correspondance dans un tableaux

caco64
|
Idem mais avec une condition. Par exmple, je suppose que tu as mis les caractères dans l'ordre minuscule, puis majuscule puis chiffres de 0 à 9 Alors le "a" doit renvoyer 1, le "A" 27 et le "0" 53. Tu peux faire un truc du style :
sub mon_tableau() dim choix_caractere dim num_asc as integer dim indice_tableau as integer
'choisir le caractere, par exemple avec un inputbox choix_caractere = "d"
num_asc = asc(choix_caractere) if num_asc >= 48 and num_asc <= 57 then indice_tableau = num_asc + 5 elseif num_asc >= 97 and num_asc <= 122 then indice_tableau = num_asc - 96 elseif num_asc >= 65 and num_asc <= 90 then indice_tableau = num_asc - 42 else msgbox "pb sur le choix du caractère" end if end sub
il existe un code ascii différent pour les minuscules et les majuscules La haine aveugle n'est pas sourde
|
|
mercredi 10 octobre 2007 à 22:43:02 |
Re : correspondance dans un tableaux

xav0
|
Réponse acceptée !
Bonjour,
tu peux aussi créer un tableau inverse du premier. Ca marche quels que soient les caractères dans le premier tableau.
Dim monTableau(0 To taille_quelconque) As String 'monTableau doit être rempli entièrement avec des caractères...
Dim TableauInv(0 To 255) As Long, Lettre As String
'Initialise le tableau For i = LBound(monTableau) To UBound(monTableau) Lettre = Asc(monTableau(i)) TableauInv(Lettre) = i Next i
'Maintenant, il suffit de consulter le deuxième tableau pour obtenir l'index à partir d'un caractère MsgBox("La lettre A a pour indice " & TableauInv(Asc("A"))) MsgBox("La lettre L a pour indice " & TableauInv(Asc("L")))
|
|
mercredi 10 octobre 2007 à 23:28:18 |
Re : correspondance dans un tableaux

jack
|
Re Hote moi d'un doute : Tu mets les lettres dans un ordre quelconque, on est d'accord ? (puisque ton exemple, tu as mis le "z" est 23, alors qu'il serait le 26ème élément, donc d'index 25 dans un tableau classé) Il ne peut donc pas y avoir de correspondance entre le code ASCII de la lettre et le numéro de l'index du tableau !
Si les lettres sont dans l'ordre alphabétique dans ton tableau, je te conseille vivement de prendre des cours de français avant de continuer en programmation. Une erreur pareil sur le numéro d'une lettre dans l'alphabet est quand même une base minimum, non ? et en plus, ça éviterait qu'on perde notre temps ...
Vala Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
|
|
jeudi 11 octobre 2007 à 18:26:37 |
Re : correspondance dans un tableaux

lolpop
|
oui j'ai fait une erreur ca arrive non? c'est bien 25 et pas 23 pour le z
merci xav0 pour ta reponse c'est ce a quoi j'ai pensé cette nuit aussi :)
|
|
Cette discussion est classée dans : partir, caractere, tableaux, obtenir, correspondance
Répondre à ce message
Sujets en rapport avec ce message
Caractere ASCII x barre (moyenne) [ par Patrik ]
Bonjour,Je souhaiterai obtenir le code latin ou ascii pour obtenir le symbole x barre représente l'abréviation de la moyenne.Patrik
obtenir le nom d'un dossier [ par Fwdavy ]
je voudrais a partir d'une boucle lister les nom des dossiers (ou fichier) a partir d'une adresse specifique. Pour : - supprimer un fichier ou un doss
Lancer une procedure à partir d une chaine de caractere [ par farrakis ]
Bonjour,J aimerais lancer une procédure partir d'une chaine de caractere, sans avoir à écrire du code du genreIf monTexte="toto" then call totomais pl
obtenir une table a partir de 2 tables [ par aztcaLISS ]
Salut,Je voudrais savoir comment faire une requete permettant d'obtenir une table contenant toutes les lignes d'une Table1 et toutes les lignes d'une
Peut-on obtenir un code à partir d'un exe sans avoir VB6 ? [ par nono78220 ]
Bonjour,Il est possible de faire des exe avec des logiciels tels que "inno_setup"Question: si notre code est compilé avec un tel logiciel, y-a t'il un
Obtenir un Type à partir d'un String [ par The Meteorologist ]
Bonjour, je cherche une méthode permettant d'obtenir un type à partir d'un String contenant son nom et ses namespaces. Par exemple : Dim nomDuType
Convertir byte() en caractere ASCII [ par Grinvald ]
Bonjour,Je souhaiterai convertir un tableaux de byte en caractère ASCII.Le tableaux est le résultat d'un hachage.Merci de votre aide.
Peut'on obtenir un object à partir d'un hwnd ? [ par vicosta ]
Bonjour,Peut'on obtenir un object à partir d'un hwnd d'une façon quelquonque comme celle-ci ?D'abord, créer un object, dans ce cas, le calendrier:Dim
Problème d'ouverture de fichiers à partir de mon VBA [ par mike56edwards ]
Bonjour à tous,Je travaille sur un projet pour mes études. Sur certains de mes userform, j'ai des commandbutton qui permettent d'ouvrir un dossier dan
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|