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 :

Manipulation d'un Range en ligne de code


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 40
    Par défaut Manipulation d'un Range en ligne de code
    Bonjour a tous,
    debutant de mon etat, on dadavyy m'a aidé tout récement à construire la fonction bdmediane dont voici le lien ci dessous

    http://developpez.net/forums/showthread.php?t=344905


    elle fonctionne parfaitement et je rebondi sur le sujet pour te poser quelque question partant de cette fonction.

    l'approche adopté dans ce code est tres proche de ce que je fais sous Scilabtout le temps (Declarer un vecteur vide,faire des operations dessus et ensuite concatener ). A l'interieur du code on declare un Range sRange vide, ensuite on fait des operations à l'interieur et ensuite on concatene. Donc a la sorti en memoire On a un Range sRange qui contient les données finales voulues

    Maintenant se pose la question de sorti des resultats en VBA:

    Mes questions :

    1. En quoi la structure du Range sRange du code est elle differente de celle d'un vecteur dont on peut manipuler a volonté les elements par des vecteur(1), vecteur(2),......

    2. Si l'on désire manipuler sRange comme un vecteur i.e pouvoir acceder a son premier element ou a un element quelquonque que faire ?

    3. Peut on donner a sRange une structure de matrice ?

    4. Maintenant les question d'affichage: Que faire si je veut afficher les valeurs de Srange sur une feuille Excel

    4.1 dans une plage determiné
    4.2 dans une plage quelquonque

    5. supposons que je veuille directement lancer le tracé de Srange sans afficher ses valeurs sur une feuille Excel et proceder ensuite manuellement ? Comment le faire en ligne de commande ?

    Pour ceux qui prtique du Scilab a cet etape on fait simplement un plot2d(vect) et on a le tracé, est ce possible ici ?

    Merci d'avance de repondre à ces question qui me changerons la vie quand je coderais

  2. #2
    Membre émérite
    Inscrit en
    Avril 2007
    Messages
    667
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2007
    Messages : 667
    Par défaut
    Bonjour,
    Mmm voila des questions interressantes Je suis pas sur de tout ce que je vais marquer mais ce sera l'occasion de corriger ce que je crois savoir.

    Citation Envoyé par bourbe
    1. En quoi la structure du Range sRange du code est elle differente de celle d'un vecteur dont on peut manipuler a volonté les elements par des vecteur(1), vecteur(2),......
    Pas tout a fait, sRange est un objet qui contient plusieurs objets (ou une collection d'objet?) qui ont comme proprietes, entre autres, d'avoir une valeur.

    Citation Envoyé par bourbe
    2. Si l'on désire manipuler sRange comme un vecteur i.e pouvoir acceder a son premier element ou a un element quelquonque que faire ?
    Je pense qu'on ne peut pas.

    Citation Envoyé par bourbe
    3. Peut on donner a sRange une structure de matrice ?
    Oui, mais alors il faut declarer autrement:
    -soit en collection de range (ou de cell)
    -soit en tableau de range
    Comme range est un objet je ne sais pas s'il y aurait une quelconque difference (a part que la collection est necessairement unidimensionnelle).

    Citation Envoyé par bourbe
    4. Maintenant les question d'affichage: Que faire si je veut afficher les valeurs de Srange sur une feuille Excel

    4.1 dans une plage determiné
    4.2 dans une plage quelquonque
    Je ne comprends pas, une plage est forcement determinee (tu ne peux pas dire a Excel: "met ca ou tu veux"). Sinon c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Plage2.value = sRange.value
    avec plage2 une instance de plage (comme sRange) ou un truc de la forme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    workbook("truc.xls").sheets("feuille").range("A3:J8")
    Citation Envoyé par bourbe
    5. supposons que je veuille directement lancer le tracé de Srange sans afficher ses valeurs sur une feuille Excel et proceder ensuite manuellement ? Comment le faire en ligne de commande ?
    Je crois qu'on ne peut pas creer de graphique sous excel sans mettre les valeurs dans des cellules.

    Citation Envoyé par bourbe
    Merci d'avance de repondre à ces question qui me changerons la vie quand je coderais
    Avec plaisir, ca m'a oblige a me poser des questions que je ne m'etais jamais posees avant

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 40
    Par défaut
    Bonjour,

    tu as dit :

    Oui, mais alors il faut declarer autrement:
    -soit en collection de range (ou de cell)
    -soit en tableau de range


    Pourrais avoir plus de précisions sur la chose i.e comment effectivement se fera la construction de la collection de Range et du tableau de Range ?


    tu as dit:

    Je ne comprends pas, une plage est forcement determinee (tu ne peux pas dire a Excel: "met ca ou tu veux"). Sinon c'est
    Code :

    Plage2.value = sRange.value

    avec plage2 une instance de plage (comme sRange) ou un truc de la forme
    Code :

    workbook("truc.xls").sheets("feuille").range("A3:J8")




    Je suis ok mais ici : workbook("truc.xls").sheets("feuille").range("A3:J8") ca supose connu la taille de sRange. Dans le cas ou ce n'est pas le cas i.e pourrais avoir une ligne de commande du meme type mais qui marchera quelque soit la taille de sRange ? Bien entendu l'affichage se fera en colonne sous Xp

    Ma question 5) est elle realisable non cette fois avec un sRange mais avec une plage ?

    Merci encore d'avance

  4. #4
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonsoir

    supposons que je veuille directement lancer le tracé de Srange sans afficher ses valeurs sur une feuille Excel et proceder ensuite manuellement ? Comment le faire en ligne de commande ?
    http://vb.developpez.com/faqvba/?pag...creategraphdyn


    bonne soirée
    michel

Discussions similaires

  1. [LG]Traduction de 5 lignes de code
    Par barthelv dans le forum Langage
    Réponses: 2
    Dernier message: 14/01/2005, 11h13
  2. Comptabiliser les lignes de code d'un projet
    Par JPigKeud dans le forum Qualimétrie
    Réponses: 5
    Dernier message: 07/01/2005, 14h09
  3. [Debutant(e)]ligne de code sous eclipse
    Par skywalker3 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/01/2005, 17h37
  4. [netbeans][Linux] Nombre de lignes de codes
    Par sylvain_neus dans le forum NetBeans
    Réponses: 5
    Dernier message: 13/08/2004, 10h09
  5. Calculeur de ligne de code
    Par Bernybon dans le forum Autres éditeurs
    Réponses: 9
    Dernier message: 05/03/2004, 16h29

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