Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1133 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  problème avec la fonction Range

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème avec la fonction Range

n°1331510
elgobi
Posté le 24-03-2006 à 10:39:41  profilanswer
 

Bonjour,
J'ai un problème dans mon programme je souhaite sélectionner une colonne toutes les 5 colonnes mais dans la fonction Range les colonnes sont désignées par des lettres . Y'a t'il un moyen d'incrémenter les lettres ou d'utiliser une autre fonction où les colones sont désignées par des chiffres?
merci d'avance

mood
Publicité
Posté le 24-03-2006 à 10:39:41  profilanswer
 

n°1331582
eric455
Posté le 24-03-2006 à 11:39:23  profilanswer
 

Bonjour elgobi
Bonjour à tous
 
En VBA les colonnes sont reprises en chiffre par :
macolonne = ActiveCell.Column
Cela devrait t'aider
Cordialement

n°1331614
elgobi
Posté le 24-03-2006 à 12:02:32  profilanswer
 

merci  
mais le problème c'est que même si je connais le chiffre de la colone, je ne vois pas comment le faire intervenir dans Rang("B6:C104" )
en faite je voudrais que B et C soient des variables

n°1331633
watashi
La démotivation : JAMAIS !
Posté le 24-03-2006 à 12:21:52  profilanswer
 

elgobi a écrit :

merci  
mais le problème c'est que même si je connais le chiffre de la colone, je ne vois pas comment le faire intervenir dans Rang("B6:C104" )
en faite je voudrais que B et C soient des variables


Salut elgobi,
c'est toute la colonne que tu veux sélectionner ou juste une partie de la colonne ?
si c'est toute la colonne je m'étais fais une petite fonction personnalisée qui devrait t'aider :

Code :
  1. Public Function ConcatColonne(ByVal Debut As Long, fin As Long, step As Integer) As Range
  2. Dim i As Integer, plage As String
  3. plage = Columns(Debut).Address
  4. For i = Debut + step To fin Step step
  5.     plage = plage & "," & Columns(i).Address
  6. Next i
  7. Set ConcatColonne = Range(plage)
  8. End Function

Pour l'appel :

Code :
  1. Sub test()
  2. Dim maPlage As Range
  3. Set maPlage = ConcatColonne(1, 15, 5)
  4. maPlage.Select
  5. End Sub


---------------
Je bidouillle c'est sur... Mais j'essaye de faire en sorte que ça marche ;-)
n°1331669
elgobi
Posté le 24-03-2006 à 13:15:44  profilanswer
 

c'est toute la colonne  
merci beaucoup je vais essayer ta fonction personalisée

n°1331769
elgobi
Posté le 24-03-2006 à 15:13:56  profilanswer
 

ça marche!!!
merci encore

n°1331823
watashi
La démotivation : JAMAIS !
Posté le 24-03-2006 à 15:54:39  profilanswer
 

de rien ;)
édites juste ton post avec un résolu ça pourra en aider d'autres :)


---------------
Je bidouillle c'est sur... Mais j'essaye de faire en sorte que ça marche ;-)
n°1847252
Slalom2209
Posté le 04-02-2009 à 18:46:30  profilanswer
 

salut à tous!
 
pour moi c'est plus ou moins le même problème avec "Range", mais je veux prendre la moyenne de diz cellules dans une autre feuille, puis avancer de trente cellules et prendre la moyenne de diz encore, etc.
 
j'ai cette code, mais je n'arrive pas à changer la partie R[1] et R[10] pour être une fonction de i et i+9, par exemple, où on peut décider quel i on veut utiliser...
 
    Range("C3" ).Select
    ActiveCell.FormulaR1C1 = "=AVERAGE(Montée!R[1]C[-1]:R[10]C[-1])"
 
suggestions? merci!
NB : mon ordi est en anglais, pour les fonctions

n°1848574
PMO2
Posté le 08-02-2009 à 13:12:33  profilanswer
 

Bonjour Slalom2209,
 
Pour pouvoir vous aider il me faut les précisions suivantes
 
1) L'adresse où s'inscrit la moyenne (C3 dans votre message) puis les adresses suivantes (C4 C5 C6 ...  ???)
ainsi que le nom de la feuille des résultats.
2) L'adresse de la plage de cellules qui founissent les données pour le calcul de la moyenne car l'adresse de  
l'exemple que vous donnez est une adresse relative (mais relative à quoi ? On ne sait pas)
Indiquez l'adresse selon ce style :   feuille Montée   plage "A1:B5"
3) Précisez dans quel sens se fait l'avancement de 30 cellules  
         en lignes : A1 passe à A31
         en colonnes : A1 passe à  AE1
 
Cordialement.
 
PMO
Patrick Morange


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  problème avec la fonction Range

 

Sujets relatifs
Petit problème de parse errorPointeurs sur fonction membre, héritage, toussa
Probleme étrange avec realloc ...Probleme avec le validator du W3C
[PHP] *Resolu * Problème de chemin avec les "include"[C] Problème de pointeurs et d'allocation
CSS probleme de cascading avec les a:link, a:hover...Problème CVS - Magic Number
[VBA] [Resolu] [Thx to Epena o/ ] Probleme de couleur de cellule [...][JSP] : out.println dans une fonction
Plus de sujets relatifs à : problème avec la fonction Range


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR