begin process at 2012 02 17 11:48:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Divers

 > 

Débutants

 > 

Identifier un caractere


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

Identifier un caractere

jeudi 6 mars 2008 à 16:12:14 | Identifier un caractere

ralfoose

   Bonjour à tous,

Pour faire court, mon job évolue et je dois évoluer avec :) Cela passe par la mise en place d'outils de repporting utilisant les macros Excel que je ne maîtrise pas trop. A la fac, on nous a appris le Pascal, j'ai donc des bases de prog mais ça s'arrête malheureusement là...

Je cherche à formater un tableau excel comme suite :
Certaines lignes contiennent des cellules de type "300x250 / 728x90", je voudrais avoir à la place deux lignes qui ne contiendrait plus qu'une seule info, "300x250" pour l'une et "728x90" pour l'autre.

Concrêtement, je pense utiliser une boucle sur l'ensemble des lignes de mon tableau afin de détecter ce caractère. Compter son nombre d'occurence et insérer autant de ligne que d'occurence. La premiere ligne reprendrait le texte avant le caractere et la seconde, le texte après.

Je cherche mais ne trouve pas les outils me permettant de faire cette manip de mise en forme.
Pouvez-vous m'aider à identifier le caractère ?
Apres je compte et stocke le nombre de fois où il est utilisé dans une variable qui me permettra de créer autant de lignes supplémentaires.
Et là j'ai besoin de vous à nouveau pour récupérer le contenu de part et d'autre du caractère "/", les stocker et les coller dans les lignes nouvellement crées.

Je ne suis pas sur d'être très clair donc n'hésitez pas à me contacter pour toute précision.

Merci déjà à tout ceux qui ont lu mon post jusqu'au bout, et un énorme merci  ceux qui pourront m'aider.

Bonne journée,
Cordialement.
jeudi 6 mars 2008 à 17:25:33 | Re : Identifier un caractere

_Fabien

Y a plus simple qu'une macro, mais je sais pas si tu vas comprendre :
1/Sélectionne toutes les cellules concernées et fait copier-collage spécial(texte sans mise ne forme) dans Word.
2/Fait un Ctrl+H.
3/Dans la zone Rechercher, tapes : " / " (espace/espace) sans les guillemets (of course).
4/Dans la zone Remplacer par : tape ^t
5/Lance le tout et t'obients le résultat voulu ou presque.
6/Dans ton Word, Fait un Ctrl+A et colle-le dans une feuille Excel, et voilà.

3mn, il m'a fallu !


_____________________________________________________________
Coder et coder sont 2 choses différentes. La 1ère consiste à arriver au but coûte que coûte. La 2nde est de trouver la solution de manière élégante.
jeudi 6 mars 2008 à 17:27:04 | Re : Identifier un caractere

_Fabien

n.b. Excel reconnaît la tabulation comme séparateur de cellules. Donc je t'ai fait remplacer tous tes " / " par des tabulations.

_____________________________________________________________
Coder et coder sont 2 choses différentes. La 1ère consiste à arriver au but coûte que coûte. La 2nde est de trouver la solution de manière élégante.
jeudi 6 mars 2008 à 18:57:02 | Re : Identifier un caractere

ralfoose

Merci Fabien pour cette solution, mais ce que je cherche à faire doit être intégré dans une macro qui reformate un classeur entier. Ca doit impérativement passer par une macro ...

Domage, j'aurai aimé que ce soit aussi simple à faire que la solution suggérée :)
vendredi 7 mars 2008 à 10:27:16 | Re : Identifier un caractere

_Fabien

Réponse acceptée !
Effectivement. Tu veux qu'à la fin ça donne çà :
Ligne1 : 300x250
Ligne2 : 728x90
Ligne3 : 300x250
Ligne4 : 728x90
(etc)

1/Tu fais une boucle sur toutes les feuilles
sub nnnnnnnnnnn()
with worksheets
' parcours de chaque feuille de ton classeur
for f=1 to .count
  ' Parcours de chaque colonne de la feuille parcourue
  for j=1 to NbColonnesFeuille
    ' Parcours de chaque ligne de la feuille parcourue
    for i=1 to NbLignesFeuille
     (ici tu traites chacune de tes cellules)
     .item(i).Cells(i,j).value 'voici pour accéder à chacune de tes cellules
     next i
  next j
next f
end with
end sub
(boucles valables sous condition que la structure de tes feuilles sont identiques : même nb lignes, même nb colonnes, sinon, faudra remplacer les for i et for j par un Tant Que avec un boolean pour sortir de la boucle, du genre si j'ai atteint la fin de la ligne/colonne finAtteinte = true)

2/Pour découper ta cellule, je te laisse chercher dans l'aide d'Excel (va chercher dans les fonctions qui traitent les chaînes de caractères). Tu auras 2 variables format1="300x250" : format2="728x90"

3/Après je suppose que tu mets tout çà dans une nouvelle feuille (dans ce cas, mets ta feuille en dernière et fait un for f=1 to .count-1
Pour accéder à ta dernière feuille : .item(.count) et ensuite tu colles format1 et format2 dans une nouvelle boucle, comme ceci

  for i=1 to 2
    if i mod 2 <>0 then
      .item(.count).cells(i,1).value = format1
   else
     .item(.count).cells(i,1).value = format2
   end if
  next i
______________________________
Enfin, tu me diras quelle note t'as mise ta prof pour ce TP/Projet LOL


_____________________________________________________________
Coder et coder sont 2 choses différentes. La 1ère consiste à arriver au but coûte que coûte. La 2nde est de trouver la solution de manière élégante.
vendredi 7 mars 2008 à 14:32:10 | Re : Identifier un caractere

ralfoose

Merci _Fabien pour cette piste, je vais chercher dans cette direction !

C'est mon boss qui va être content :)
vendredi 7 mars 2008 à 15:06:11 | Re : Identifier un caractere

_Fabien

Ah beh tu m'enverras un chèque !

_____________________________________________________________
Coder et coder sont 2 choses différentes. La 1ère consiste à arriver au but coûte que coûte. La 2nde est de trouver la solution de manière élégante.


Cette discussion est classée dans : caractère, caractere, lignes, identifier, place


Répondre à ce message

Sujets en rapport avec ce message

remplacement de caractère dans un fichier texte mais seulement sur certaines lignes (comment localiser ??) [ par extrastouf ] bonjour,je suis en train d'essayer de faire un programme permettant de convertir un programme FAO au format APT en format ISO (seulement sur qq foncti Gerer le caractere ' dans les requetes [ par PatriceVB ] Lorque l'on exécute une requete sur un champ contenant le caractère ' la requete interprète cet apostrophe et arrête l'expression de la requete a ce c peut-on mettre un caractère à place d'un autre sur le clavier? [ par PBDLpc ] boujour, j'ai une question assez pratique à poser : comme vous l'avez tous remarqué, sur un clavier français le symbole "@" est difficile à taper alro Identifier le code ASCII d'un caractère [ par PatBlarg ] Bonjour, j'ai chargé dans blocnotes un fichier d'un ancient logiciel DOS qui permet de créer des plaquettes d'identification sur une vieille machine. utiliser le caractere " [ par hindhinf ] bonjour je veux utiliser le caractère " dans un string , mais le programme de l'admet car ce caractère est spécifique pour l'affectation des string , Supprimer l'apostrophe dans une chaine de caractere [ par ramm50 ] Salut tout le monde,je suis entrain d'ecrire un programme qui insert dans une BD une chaine de caractère recupéré d'un champ texte .le problème c'est EXCEL [ par sernams ] slt tt lmd, je suis un debutant en EXCEL et j'ai fichier EXCEL, dedans il 30 colonnes et environ 200ligne et en fait pour l'intersec des ligne et colo 64 lignes [ par petiflamand ] Bien le bonsoirj'ai 64 lignes a imprimer j'ai fais un cadre comme pour une factureje voudrais qu'il m'imprime 20 lignes par feuillequelle est la fonct Center le texte des Boutons [ par gulix ] Voila, pour une appli que je développe actuellement, j'ai des boutons qui comportent du texte sur plusieurs lignes (2 ou 3). J'aimerais que ce texte s Piquer les majuscules !! [ par galldup ] Salute ! J'ai comme quoi une petite enigme a résoudre : J'ai un string comme ça : "PROGRAM/FICHIER/document.docEt je voudrais une petite fonction qui


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 : 1,108 sec (4)

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