Aide pour une Macro sous Excel
Résolu
youchlure
Messages postés
84
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Voila j'ai un fichier sous la forme de chiffres sur une seule colonne avec 47936 lignes.
Ce fichier représente un MNT altitude sur une carte qui est composé de 214 colonnes et de 224 lignes ( 224 * 214 =47936 )
Je souhaite créér une seconde colonne qui contiendrait des numéros de 1 à n (rectangles).
Je veux créer des rectangles sur la carte de 20 * 10 cellules
Du coup je me retrouverais avec un fichier de la sorte :
J'espère me faire comprendre en montrant un exemple raccourci de mon modèle.
Ici ma carte ne fait que 27 cellules avec 3 lignes et 9 colonnes.
Donc ici on a sur la colonne 1 27 cellules
colonne 2 l'altitude correspondante
colonne 3 identifiant du rectangle créé
Graphiquement j'obtiens donc ça :
111222333
111222333
111222333
Au final j'ai donc trois nouveaux rectangles : 1, 2 et 3
Par contre un dernier détail si jamais l'altitude est = 0 alors je ne veux pas lui affecter une valeur de rectangle mais plutot l'argument NULL.
Merci beaucoup pour votre aide !
Bonne journée :)
Voila j'ai un fichier sous la forme de chiffres sur une seule colonne avec 47936 lignes.
Ce fichier représente un MNT altitude sur une carte qui est composé de 214 colonnes et de 224 lignes ( 224 * 214 =47936 )
Je souhaite créér une seconde colonne qui contiendrait des numéros de 1 à n (rectangles).
Je veux créer des rectangles sur la carte de 20 * 10 cellules
Du coup je me retrouverais avec un fichier de la sorte :
Altitude Rectangle 1 x1 1 2 ... 1 3 1 4 2 5 2 6 2 7 3 8 3 9 3 10 1 11 1 12 1 13 2 14 2 15 2 16 3 17 3 18 3 19 1 20 1 21 1 22 2 23 2 24 2 25 3 26 3 27 xn 3
J'espère me faire comprendre en montrant un exemple raccourci de mon modèle.
Ici ma carte ne fait que 27 cellules avec 3 lignes et 9 colonnes.
Donc ici on a sur la colonne 1 27 cellules
colonne 2 l'altitude correspondante
colonne 3 identifiant du rectangle créé
Graphiquement j'obtiens donc ça :
111222333
111222333
111222333
Au final j'ai donc trois nouveaux rectangles : 1, 2 et 3
Par contre un dernier détail si jamais l'altitude est = 0 alors je ne veux pas lui affecter une valeur de rectangle mais plutot l'argument NULL.
Merci beaucoup pour votre aide !
Bonne journée :)
A voir également:
- Aide pour une Macro sous Excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Déplacer une colonne excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
14 réponses
bonjour
j'ai du mal à voir ce que tu veux exactement
ce que j'ai compris (Je veux créer des rectangles sur la carte de 20 * 10 cellules )
A partir de ta colonne 3 (Rectangle) tu veux
- prendre les 10 premières lignes et concaténer ça dans la colonne 4 ligne 1
- prendre les 10 suivants et concaténer ça dans la colonne 4 ligne 2
- etc..
et ça 20 fois jusqu'à colonne 4 ligne 20
ce qui ne fait que 200 cellules de la colonne 3 traitées
Q1. et ensuite ?
Q2. comment interviennent les colonnes 1 et 2?
Q3. si jamais l'altitude est = 0 alors je ne veux pas lui affecter une valeur de rectangle mais plutot l'argument NULL. ???
bonne suite
j'ai du mal à voir ce que tu veux exactement
ce que j'ai compris (Je veux créer des rectangles sur la carte de 20 * 10 cellules )
A partir de ta colonne 3 (Rectangle) tu veux
- prendre les 10 premières lignes et concaténer ça dans la colonne 4 ligne 1
- prendre les 10 suivants et concaténer ça dans la colonne 4 ligne 2
- etc..
et ça 20 fois jusqu'à colonne 4 ligne 20
ce qui ne fait que 200 cellules de la colonne 3 traitées
Q1. et ensuite ?
Q2. comment interviennent les colonnes 1 et 2?
Q3. si jamais l'altitude est = 0 alors je ne veux pas lui affecter une valeur de rectangle mais plutot l'argument NULL. ???
bonne suite
Bonjour,
en fait à la base je n'ai que 2 colonnes une représentant le nombre de cellules donc ici de 1 à 47936 et sur la deuxième colonne l'altitude correspondante.
(Graphiquement cela représente un carré de 224*214 = 47936 cellules)
Je veux simplement créer une troisième colonne.
Celle ci comprendra des chiffres de 1 à N.
Ces chiffres correspondent à des " rectangles" que je souhaite créer.
Pour cela il faudrait à chaque fois qu'une altitude est différente de 0, on créé sur la troisième colonne un identifiant rectangle donc 1 pour commencer.
Je voudrais que ces rectangles fassent 10*5 donc qu'il y ait 50 cellules qui soit identifiant 1 dans la troisième colonne !
Puis on continue comme ça tant qu'il y a des cellules.
Je vous explique plus clairement par un exemple :
Ici j'ai un carré de 3 lignes avec 10 colonnes.
Je cherche à faire des "rectangles" de 2*2.
On peut voir la création du rectangle 1 2 et 3 puis une fois fini, on commence la création du carré 4 5 et 6 et etc...si on avait plus de lignes.
Altitude delimitation
0 null
0 null
0 null
24 1
21 1
28 2
45 2
34 3
0
0
0
0
0
35 1
23 1
23 2
33 2
12 3
0
0
0
0
34 4
33 4
55 5
43 5
22 6
22 6
0
0
etc........
Donc comme on peut voir on créé une troisième colonne avec :
quand alt=0 rectangle = null
J'espère avoir mieux expliqué!
en fait à la base je n'ai que 2 colonnes une représentant le nombre de cellules donc ici de 1 à 47936 et sur la deuxième colonne l'altitude correspondante.
(Graphiquement cela représente un carré de 224*214 = 47936 cellules)
Je veux simplement créer une troisième colonne.
Celle ci comprendra des chiffres de 1 à N.
Ces chiffres correspondent à des " rectangles" que je souhaite créer.
Pour cela il faudrait à chaque fois qu'une altitude est différente de 0, on créé sur la troisième colonne un identifiant rectangle donc 1 pour commencer.
Je voudrais que ces rectangles fassent 10*5 donc qu'il y ait 50 cellules qui soit identifiant 1 dans la troisième colonne !
Puis on continue comme ça tant qu'il y a des cellules.
Je vous explique plus clairement par un exemple :
Ici j'ai un carré de 3 lignes avec 10 colonnes.
Je cherche à faire des "rectangles" de 2*2.
On peut voir la création du rectangle 1 2 et 3 puis une fois fini, on commence la création du carré 4 5 et 6 et etc...si on avait plus de lignes.
Altitude delimitation
0 null
0 null
0 null
24 1
21 1
28 2
45 2
34 3
0
0
0
0
0
35 1
23 1
23 2
33 2
12 3
0
0
0
0
34 4
33 4
55 5
43 5
22 6
22 6
0
0
etc........
Donc comme on peut voir on créé une troisième colonne avec :
quand alt=0 rectangle = null
J'espère avoir mieux expliqué!
je vous poste un lien avec une image de ce que je souhaite...je me suis dit que ce serait le plus simple pour vous faire comprendre.
Vous verrez ce sont deux cartes superposé, une première avec l'altitude et une seconde avec les rectangles délimités...
bonne journée
https://www.hiboox.fr/
Vous verrez ce sont deux cartes superposé, une première avec l'altitude et une seconde avec les rectangles délimités...
bonne journée
https://www.hiboox.fr/
bonjour
je ne vois toujours pas quel est exactement ton problème
peux tu envoyer le début de ton fichier, un millier de lignes (au format excel 2003) sur cjoint.com avec un exemple de ce que tu veux obtenir et quelques éclaircissements
bonne suite
je ne vois toujours pas quel est exactement ton problème
peux tu envoyer le début de ton fichier, un millier de lignes (au format excel 2003) sur cjoint.com avec un exemple de ce que tu veux obtenir et quelques éclaircissements
bonne suite
ok voila : http://www.cijoint.fr/cjlink.php?file=cj201110/cijzB9tXZz.xlsx
sur ce fichier c'est un exemple que j'ai récupéré.
A la base je n'ai que la premiere colonne et je souhaite faire cette deuxieme colonne, qui met des identifiants sur les cellules qui ont une latitude.
Au final on obtient des carrés comme vous pouvez le voir sur le lien du post présédent.
merci
sur ce fichier c'est un exemple que j'ai récupéré.
A la base je n'ai que la premiere colonne et je souhaite faire cette deuxieme colonne, qui met des identifiants sur les cellules qui ont une latitude.
Au final on obtient des carrés comme vous pouvez le voir sur le lien du post présédent.
merci
Bonjour,
Je crois que tu devrais ajouter une autre feuille avec tes n° mis en place en rectangle et en encadrant ceux qui forment un rectangle délimité (avec son n° mis dans un objet texte par dessus)
On ne sait toujours pas le sens de lecture (horizontal ou vertical) que ce soit pour tes cellules ou pour tes rectangles.
eric
Je crois que tu devrais ajouter une autre feuille avec tes n° mis en place en rectangle et en encadrant ceux qui forment un rectangle délimité (avec son n° mis dans un objet texte par dessus)
On ne sait toujours pas le sens de lecture (horizontal ou vertical) que ce soit pour tes cellules ou pour tes rectangles.
eric
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
un exemple de ce qu'il faudrait pour éclaircir ta demande :
http://www.cijoint.fr/cjlink.php?file=cj201110/cijaWoImCX.xls
eric
http://www.cijoint.fr/cjlink.php?file=cj201110/cijaWoImCX.xls
eric
oui, voila c'est exactement ça que je cherche à faire...
Sauf que toutes les cellules sont sur une meme colonne comme indiqué auparavant et que lorsqu'une altitude = 0, je ne veux pas que la cellule ai un identifiant.
Je pourrai éventuellement joindre un autre exemple mais je ne comprends pas ce que ça apporterai en plus???
Sauf que toutes les cellules sont sur une meme colonne comme indiqué auparavant et que lorsqu'une altitude = 0, je ne veux pas que la cellule ai un identifiant.
Je pourrai éventuellement joindre un autre exemple mais je ne comprends pas ce que ça apporterai en plus???
voila un autre exemple plus rapprochant de mon cas désiré...
http://www.cijoint.fr/cjlink.php?file=cj201110/cijSFLyWP7.xls
ici je créer des carrés de 3 sur 3. Mais si présence en bordure, alors on va a la ligne et donc on ne complète pas le carré.
Au final on aura pas des carrés forcement de la même taille, cela dépendra des bordures et de la présence des altitudes 0.
MErci !
http://www.cijoint.fr/cjlink.php?file=cj201110/cijSFLyWP7.xls
ici je créer des carrés de 3 sur 3. Mais si présence en bordure, alors on va a la ligne et donc on ne complète pas le carré.
Au final on aura pas des carrés forcement de la même taille, cela dépendra des bordures et de la présence des altitudes 0.
MErci !
Bonsoir,
Au final on aura pas des carrés forcement de la même taille
Si tu veux bien on va rester sur la demande initiale et oublier toute idée d'irrégularité (excel n'est pas devin)
Une proposition :
Tu dois saisir les dimensions horizontales et verticales des rectangles délimités, ainsi que le nombre de rectangles délimités sur une ligne.
https://www.cjoint.com/?AJrwTGF6LyW
Je te laisse contrôler sur différents exemples
eric
Au final on aura pas des carrés forcement de la même taille
Si tu veux bien on va rester sur la demande initiale et oublier toute idée d'irrégularité (excel n'est pas devin)
Une proposition :
Tu dois saisir les dimensions horizontales et verticales des rectangles délimités, ainsi que le nombre de rectangles délimités sur une ligne.
https://www.cjoint.com/?AJrwTGF6LyW
Je te laisse contrôler sur différents exemples
eric
bonjour,
étant donné que ma carte fait 214 cellules sur une ligne sur 224 cellules par colonnes,
je souhaite donc créer 20 rectangles(10 colonnes) toutes les 10 lignes
En fait il restera donc 14 cellules en bout de chaque lignes et 4 colonnes ou aucun rectangle ne sera créer...
il me semble que tu préférai faire comme ça pour éviter l'irrégularité?
étant donné que ma carte fait 214 cellules sur une ligne sur 224 cellules par colonnes,
je souhaite donc créer 20 rectangles(10 colonnes) toutes les 10 lignes
En fait il restera donc 14 cellules en bout de chaque lignes et 4 colonnes ou aucun rectangle ne sera créer...
il me semble que tu préférai faire comme ça pour éviter l'irrégularité?
Bonjour,
il me semble que tu préférai faire comme ça pour éviter l'irrégularité?
Ben non, je préférais une vraie régularité avec des carrés pleins et que ce soit fini... ;-)
http://www.cijoint.fr/cjlink.php?file=cj201110/cijDpGCYWs.xls
Par contre je compte le dernier rectangle incomplet.
Si ça gène vraiment il faudra modifier la formule...
eric
il me semble que tu préférai faire comme ça pour éviter l'irrégularité?
Ben non, je préférais une vraie régularité avec des carrés pleins et que ce soit fini... ;-)
http://www.cijoint.fr/cjlink.php?file=cj201110/cijDpGCYWs.xls
Par contre je compte le dernier rectangle incomplet.
Si ça gène vraiment il faudra modifier la formule...
eric
non au contraire!
Par contre je ne comprends pas vraiment ton exemple...
comme je te l'ai indiqué j'ai beaucoup plus de ligne et de colonnes.
En tout j'ai 47936 cellules contre 90 dans ton exemple...
Par contre je ne comprends pas vraiment ton exemple...
comme je te l'ai indiqué j'ai beaucoup plus de ligne et de colonnes.
En tout j'ai 47936 cellules contre 90 dans ton exemple...
J'ai fait pour que ce soit évolutif, tu changeais à chaque fois les dimensions, donc adapte à tes besoin...
Dans les cellules vertes tu mets les bonnes valeurs :
dim h rect : dim horizontale d'un rectangle (10 ?)
dim v rect : dim verticale d'un rectangle (10 ou 20 ?)
nb cell h : nombre de cellules par ligne (214 ?)
Teste bien et dis...
eric
Dans les cellules vertes tu mets les bonnes valeurs :
dim h rect : dim horizontale d'un rectangle (10 ?)
dim v rect : dim verticale d'un rectangle (10 ou 20 ?)
nb cell h : nombre de cellules par ligne (214 ?)
Teste bien et dis...
eric