XL 2010 Intégrégation dans un With d'une plage avec cells

balez

XLDnaute Nouveau
Bonjour,


J'essaye d'intégrer cette ligne

With ActiveSheet.Range(Cells(xRow, 2), Cells(xRow, 9))

VBA me retourne l'erreur 1004, même avec une valeur à la place de 'xrow'

J'ai réussi à le faire tourner dans un module, mais impossible dans une feuille.

Ou se trouve l'erreur de programmation?

Je joint un fichier test.

Merci à tous,

Chris
 

Pièces jointes

  • Classeur1.xlsm
    34.3 KB · Affichages: 12
Solution
Bonjour,
Le code est dans la feuille D
Set wsp = ThisWorkbook.Worksheets("P")
Set wsd = ThisWorkbook.Worksheets("D")

remplacez :
With wsp.Range(Cells(xRow, 2), Cells(xRow, 9))​
par
With wsp.Range(wsp.Cells(xRow, 2), wsp.Cells(xRow, 9))​
Ou
with wsp.Rows(xrow).Columns("B:I")​

fanch55

XLDnaute Barbatruc
Bonjour,
Le code est dans la feuille D
Set wsp = ThisWorkbook.Worksheets("P")
Set wsd = ThisWorkbook.Worksheets("D")

remplacez :
With wsp.Range(Cells(xRow, 2), Cells(xRow, 9))​
par
With wsp.Range(wsp.Cells(xRow, 2), wsp.Cells(xRow, 9))​
Ou
with wsp.Rows(xrow).Columns("B:I")​
 
Dernière édition:

tbft

XLDnaute Accro
Bonjour à tous.
Question quand j'écris : wsp.Range("B2:B10") je ne précise pas le nom de la feuille...Pourquoi tant de haine???

J'étais en train de plancher dessus mais vous avez été plus rapide et plus efficace ...
 

balez

XLDnaute Nouveau
Bonjour à tous,

Merci à tous pour vos réponses rapides. Effectivement, une astuce à connaître que je n'avais pas réussi à ressortir de mes différentes recherches.
Comme tbft, je reste sur ma faim d'explication, d'autant plus que dans un module en déterminant wsp comme feuille active et
With ActiveSheet.Range(Cells(xRow, 2), Cells(xRow, 9)), cela fonctionne !!!!

Bonne journée,
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil

Personnellement, je préfère la seconde syntaxe ;)
(parce qu'un peu plus courte à saisir dans VBE)
VB:
Sub test()
Dim xRow&
xRow = 3
With ActiveSheet
MsgBox Range(.Cells(xRow, 2), .Cells(xRow, 9)).Address
End With
With ActiveSheet.Cells(xRow, 2).Resize(, 8)
MsgBox .Address
End With
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
315 124
Messages
2 116 460
Membres
112 748
dernier inscrit
Pboiusquet