Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

copier coller qui foire ?

alucard_xs

XLDnaute Occasionnel
re bonjour, je n'arrive pas à :

j'ai trois feuilles f1, f2 et f3 dans la feuille f1 (à la premiere ligne on va dire) je veux faire f2/A3 - f3/A3 par exemple j'ai mis dans mon vba :


Sheets("f1").Select
Range("A1").Select
ActiveCell.FormulaR1C1 = "='f3'!RC[3]-'f2'!RC[3]"

mais il me dit que mon range a échoué, une idée ?
 

Pierrot93

XLDnaute Barbatruc
Re : copier coller qui foire ?

Bonjour Alucard

essaye peut être comme ci dessous, si j'ai bien compris :

Code:
Sheets("f1").Range("A1").Value = Sheets("f2").Range("A3").Value - Sheets("f3").Range("A3").Value

bon après midi
@+
 

Banzai64

XLDnaute Accro
Re : copier coller qui foire ?

bonsoir

Testé ici et Ok

Code:
Sub test()
Sheets("f1").Select
Range("A1").Select
ActiveCell.FormulaR1C1 = "='f3'!RC[3]-'f2'!RC[3]"

Range("A1").AutoFill Destination:=Range("A1:A20")

End Sub
 

JNP

XLDnaute Barbatruc
Re : copier coller qui foire ?

Bonjour le fil ,
Tant que tu est en macro, autant utiliser une boucle.
Soit tu connais le nombre de case à remplir (de 1 à 100 par exemple) et tu codes:
Code:
Dim I as Integer
For I = 1 to 100
Sheets("f1").Cells(I, 1).Value = Sheets("f2").Cells(I, 3).Value _
      - Sheets("f3").Cells(I, 3).Value
Next I
Si tu ne connais pas le nombre de cellules à traiter, il y a plusieurs (même beaucoup...) autres solutions, que nous pourrons t'indiquer en cas de besoin.
A +
 

patte d'ours

XLDnaute Occasionnel
Re : copier coller qui foire ?

2 possibilités, parmi tant d'autres:

'Cas 1 on crée la formule puis on la tire
Sheets("feuil1").Range("A1").FormulaR1C1 = "=Feuil2!R[2]C-Feuil3!R[2]C"
Selection.AutoFill Destination:=Range("A3:A1000"), Type:=xlFillDefault


'cas2: on sélectionne la plage puis on la remplit
Range("A3:A1000").Select
Selection.FormulaR1C1 = "=Feuil2!R[2]C-Feuil3!R[2]C"


A mon avis, on ne peut pas par contre tirer sur toute la colonne dans la mesure où les feuilles 2 et 3 démarrent à la 3ème ligne et non pas à la 1ère comme la feuille 1

bonne soirée
 

alucard_xs

XLDnaute Occasionnel
Re : copier coller qui foire ?

Sub test()
Sheets("f1").Select
Range("A1").Select
ActiveCell.FormulaR1C1 = "='f3'!RC[3]-'f2'!RC[3]"

Range("A1").AutoFill Destination:=Range("A1:A20")

End Sub

-> la méthode select de la classe range a échoué ...
 

Discussions similaires

Réponses
11
Affichages
879
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…