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

RESOLU VBA- Formules jusqu’à derniere cellule

Florian53

XLDnaute Impliqué
Bonjour,

Je souhaite inscrire en vba une formule sur la ligne 4 en fonction de la derniere cellule de la ligne 1 :


VB:
dercol = Cells(1, Cells.Columns.Count).End(xlToLeft).Column
Range("U4:" & "cells(4,dercol" )_
.FormulaR1C1 = "=IF(RC[-1]="""","""",IF(ISNA(VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE)),""0"",IF(VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE)=""-"",0,VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE))))"

J'ai essayé d'écrire ce code mais il y a une erreur pouvez vous m'aider svp?

Merci à vous
 

Florian53

XLDnaute Impliqué
Merci,

J'ai une erreur lors de l’exécution sur la ligne de la déclaration de dercol:

VB:
Sub Macro30()
'Recherche valeur U4 ==> U?_
Dim dercol As Range
dercol = Cells(1, Cells.Columns.Count).End(xlToLeft).Column
Range("U4:" & Cells(944, dercol).Address).FormulaR1C1 = "=IF(RC[-1]="""","""",IF(ISNA(VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE)),""0"",IF(VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE)=""-"",0,VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE))))"
End Sub

Je voudrais que la formule s'applique de la ligne 4 à 944 de la colonne "U" jusqu'à la dernière colonne
 

Florian53

XLDnaute Impliqué
J'ai toujours la même erreur et sur la même ligne :

VB:
Sub Macro30()
'Recherche valeur U4 ==> U?_
Dim dercol As Range
dercol = Cells(1, Columns.Count).End(xlToLeft).Column
Range("U4:" & Cells(944, dercol).Address).FormulaR1C1 = "=IF(RC[-1]="""","""",IF(ISNA(VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE)),""0"",IF(VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE)=""-"",0,VLOOKUP(RC20,Tableau,MATCH(Feuil1!R1C,IrisSct,0)+2,FALSE))))"
End Sub
 

zebanx

XLDnaute Accro
Bonjour,

J'ai souvent des erreurs aussi avec dercol = Cells(1, Columns.Count).End(xlToLeft).Column
(hier soir encore)

Je préfère utiliser pour la dernière ligne / dernière colonne les données suivants :

Sub Ajoute0()
...
Dim derligne As Integer
Dim dercol As Integer

derligne = Range("A" & Rows.Count).End(xlUp).Row
dercol = Range("IV1").End(xlToLeft).Column 'en partant de la ligne 1 dans ce cas

For i = 5 To derligne
For j = 1 To dercol
....
Next j
Next i
...
End Sub
 

Discussions similaires

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