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

Macro Discussion :

SCAN rechercher les caractéres d'une cellule, dans une autre cellule dans le désordre


Sujet :

Macro

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2011
    Messages : 85
    Points : 45
    Points
    45
    Par défaut SCAN rechercher les caractéres d'une cellule, dans une autre cellule dans le désordre
    Bonjour à tous !!

    Je viens chercher de l'aide sur une fonction, macro qui permettrait de rechercher dans une cellule les caractéres que l'on trouve dans une autre.
    Afin d'être plus clair rien ne vaut un exemple :-)

    Rechercher les infos de la colonnes COL_2

    COL_1 COL_2 CARACTERES_PRESENTS DIFFERENCE
    AZERTY TYTREZA oui 0
    AZERTY TYTREZ oui 1
    AZORTU AZERTY non 2
    122 TYT122 oui 3

    En espérant qu'une solution existe :-D.

    Merci !!!!

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Février 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 210
    Points : 147
    Points
    147
    Par défaut
    Bonjour,

    Il n'est pas nécessaire de passer par une macro pour faire ça.
    De plus, l'énoncé du problème ne dit pas précisément quel doit être le nombre de différences affiché : Nombre de caractères de COL1 absents dans COL2, ou bien Nombre de caractères de COL2 absents dans COL1, ou encore (plus probablement ?) le max de ces deux différences : c'est la solution proposée ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    /* Table de test */
    data test;input col1 $ col2 $; cards;
    AZERTY TYTREZA 
    AZERTY TYTREZ 
    AZORTU AZERTY 
    122 TYT122 
    ;
    run;
    /* Calcul des variables de contrôle */
    data test(drop=indice caractere diff1 diff2);set test;	
    	diff1=0;diff2=0;
    	do indice = 1 to length(col1);
    		caractere = substr(col1,indice,1);
    		if index(col2,compress(caractere)) = 0 then diff1+1;
    	end;
    	do indice = 1 to length(col2);
    		caractere = substr(col2,indice,1);
    		if index(col1,compress(caractere)) = 0 then diff2+1;
    	end;
    	diff=max(diff1,diff2);
    run;
    proc print;run;
    Cordialement

Discussions similaires

  1. [XL-2010] Copier les cellules d'une colonne dont la valeur à changé dans une autre colonne
    Par caeruleum dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 23/09/2012, 22h01
  2. Réponses: 6
    Dernier message: 10/07/2012, 16h02
  3. Réponses: 5
    Dernier message: 06/10/2011, 12h56
  4. [XL-2007] Entrée la valeur d'une cellule d'un autre classeur dans une variable
    Par Coco_O dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/05/2011, 16h25
  5. Réponses: 3
    Dernier message: 01/06/2009, 18h21

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