Comparer la valeur d'une cellule
rox
-
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai une liste de données à trou, je voudrais que faire une autre liste reprenant les données en supprimant les cases vides. Je précise que je ne suis pas très forte en VB.
J'ai marqué ceci :
Sub test()
Dim i As Long
Range("C73").Select 'je sélectionne la case où je veux commencer
For i = 3 To 73 Step 1
if range("R[-i]C").Value="" 'si la case est vide alors je passe à la suivante
Then Next i
Else: ActiveCell.FormulaR1C1 = "=R[-i]C" 'sinon je met la valeur de la case
End Sub
J'ai un problème avec le if, il me dit qu'il attend un Then alors qu'il y en a...
Avez vous une idée pour moi?
Merci d'avance!
Rox
j'ai une liste de données à trou, je voudrais que faire une autre liste reprenant les données en supprimant les cases vides. Je précise que je ne suis pas très forte en VB.
J'ai marqué ceci :
Sub test()
Dim i As Long
Range("C73").Select 'je sélectionne la case où je veux commencer
For i = 3 To 73 Step 1
if range("R[-i]C").Value="" 'si la case est vide alors je passe à la suivante
Then Next i
Else: ActiveCell.FormulaR1C1 = "=R[-i]C" 'sinon je met la valeur de la case
End Sub
J'ai un problème avec le if, il me dit qu'il attend un Then alors qu'il y en a...
Avez vous une idée pour moi?
Merci d'avance!
Rox
A voir également:
- Comparer la valeur d'une cellule
- Aller à la ligne dans une cellule excel - Guide
- Bloquer une cellule excel - Guide
- Attribuer une valeur à une cellule texte excel - Forum Excel
- Colorer une cellule excel selon de sa valeur - Guide
- Formule pour copier la valeur d'une cellule excel ✓ - Forum Excel
1 réponse
Bonjour,
en fait c'est ton for qui n'a pas de next si tu passes par le else...
essaie avec ça :
Tu ne supprimes pas les cellules vides, tu les remplis !
Tu ne mets pas une valeur mais une formule !
D'origine tu ne remplissais que C73 puisque c'est le seul select et tu faisais . select =...
En gros utilises les bons termes car là on ne sait pas du tout ce que tu veux et ce qui est bon.
eric
en fait c'est ton for qui n'a pas de next si tu passes par le else...
essaie avec ça :
Sub test()
Dim i As Long
Range("C73").Select 'je sélectionne la case où je veux commencer
For i = 3 To 73 Step 1
If Range("R[i]C").Value = "" Then
Range("R[i]C").FormulaR1C1 = "=R[-i]C" 'sinon je met la valeur de la case
End If
Next i
End Sub
Tu ne supprimes pas les cellules vides, tu les remplis !
Tu ne mets pas une valeur mais une formule !
D'origine tu ne remplissais que C73 puisque c'est le seul select et tu faisais . select =...
En gros utilises les bons termes car là on ne sait pas du tout ce que tu veux et ce qui est bon.
eric