OVH Cloud OVH Cloud

variable de type caractère

5 réponses
Avatar
Bonjour,
Comment je peut faire pour incr=E9menter une variable de=20
type caractere voici un exemple:

l =3D "A"

<d=E9but de la boucle>

Sheets("DATA").Select
Range(l & "1").Select 'je voudrais avoir A1,B1,etc
Selection.Copy
Sheets("Macro").Select
Range("A2").Select
ActiveSheet.Paste

<incr=E9mentation =E0 la lettre suivante>

<fin de ma boucle>

Merci d'avance

5 réponses

Avatar
Nicolas B.
Salut,

Pour faire varier les colonnes, il vaut mieux utiliser la syntaxe Cells :
dim l as integer
for l=1 to 10
...
cells(1,l).select
...
next


A+
--
Nicolas B.


nous a écrit
dans le message 2b21901c46809$aef93ae0$ :
Bonjour,
Comment je peut faire pour incrémenter une variable de
type caractere voici un exemple:

l = "A"

<début de la boucle>

Sheets("DATA").Select
Range(l & "1").Select 'je voudrais avoir A1,B1,etc
Selection.Copy
Sheets("Macro").Select
Range("A2").Select
ActiveSheet.Paste

<incrémentation à la lettre suivante>

<fin de ma boucle>

Merci d'avance


Avatar
Joel
Bonjour anonymous,

sachant que range(1 & "1") ("A1") c'est la même chose que :

Cells(1,1) 'Ligne et colonne,

dim i as integer
For i=1 to 15 '(colonne O)
Worksheets("Macro").cells(2,i).Value=Worksheets("Data").cells(1,i).value
next

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
a écrit dans le message de
news:2b21901c46809$aef93ae0$
Bonjour,
Comment je peut faire pour incrémenter une variable de
type caractere voici un exemple:

l = "A"

<début de la boucle>

Sheets("DATA").Select
Range(l & "1").Select 'je voudrais avoir A1,B1,etc
Selection.Copy
Sheets("Macro").Select
Range("A2").Select
ActiveSheet.Paste

<incrémentation à la lettre suivante>

<fin de ma boucle>

Merci d'avance
Avatar
Vincent.
Salut !
Peut-être un truc dans ce style-là (non testé !)

For Each c in Worksheets("DATA").Range("A1:IV1")
c.Copy
Worksheets("Macro").Range("A2").PasteSpecial
Next c

Mais bon, je vois pas l'intérêt comme ça : la cellule A2
de la feuille macro sera écrasée à chaque coup...
Les voies xliennes étant parfois (souvent ?)
impénétrables, je m'en remets à ton jugement qui sera
équitable et juste, comme il convient !
A+

V.

-----Message d'origine-----
Bonjour,
Comment je peut faire pour incrémenter une variable de
type caractere voici un exemple:

l = "A"

<début de la boucle>

Sheets("DATA").Select
Range(l & "1").Select 'je voudrais avoir A1,B1,etc
Selection.Copy
Sheets("Macro").Select
Range("A2").Select
ActiveSheet.Paste

<incrémentation à la lettre suivante>

<fin de ma boucle>

Merci d'avance

.



Avatar
Philippe.R
Bonjour,

Sub increcar()
For a = 65 To 90
incre = Chr(a)
MsgBox incre, , "MPFE"
Next a
End Sub

devrait convenir à titre d'exemple
--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

a écrit dans le message de
news:2b21901c46809$aef93ae0$
Bonjour,
Comment je peut faire pour incrémenter une variable de
type caractere voici un exemple:

l = "A"

<début de la boucle>

Sheets("DATA").Select
Range(l & "1").Select 'je voudrais avoir A1,B1,etc
Selection.Copy
Sheets("Macro").Select
Range("A2").Select
ActiveSheet.Paste

<incrémentation à la lettre suivante>

<fin de ma boucle>

Merci d'avance
Avatar
michdenis
Bonjour ,

Il y a la propriété offset de l'objet range fait pour cela ...

La valeur de la variable "a" représente le nombre de colonne à droite de la cellule A1.
Cette valeur peut être aussi négative... il faut cependant vérifier que la cellule désignée puisse exister.

Dans mon exemple, si a représente une valeur négative, comme il n'y peut y avoir de colonne à gauche de la colonne A,
cela va provoquer une erreur. ....

Dim a As integer
For a = 1 To 5
MsgBox Range("A1").Offset(, a).Address
Next


Salutations!




a écrit dans le message de news:2b21901c46809$aef93ae0$
Bonjour,
Comment je peut faire pour incrémenter une variable de
type caractere voici un exemple:

l = "A"

<début de la boucle>

Sheets("DATA").Select
Range(l & "1").Select 'je voudrais avoir A1,B1,etc
Selection.Copy
Sheets("Macro").Select
Range("A2").Select
ActiveSheet.Paste

<incrémentation à la lettre suivante>

<fin de ma boucle>

Merci d'avance