[calc] remplir cellules vides d'une colonne

Résolu/Fermé
Jgotheboss Messages postés 24 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 2 septembre 2009 - 20 févr. 2008 à 17:25
Jgotheboss Messages postés 24 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 2 septembre 2009 - 6 avril 2008 à 13:00
Bonjour à tous,

J'essaie de faire une macro sous Calc de Open Office qui remplirait automatiquement par "pas de champ" lorsqu'une cellule de ma colonne est vide.
Donc ma colonne (I1:I15) est une alternance de cellules remplies de texte et de cellules vides. Je veux remplir les cellules vides sans que le texte des cellules pleines ne soit changé.

Pour l'instant j'ai fait ça en m'inspirant à droite à gauche sur internet, mais ça marche pas...

Dim oSheet As Object
Dim oCell As Object
Dim k as Integer

oSheet = ThisComponent.Sheets(0)

For k=1 To 16
oCell = oSheet.getCellByPosition(8,k-1)
If oCell.getValue <> "" Then
k=k+1
Else
oCell.SetString( "pas de champ")
End If
Next k

Si vous pouviez m'aider je vous serai très reconnaissant.
A voir également:

3 réponses

Jgotheboss Messages postés 24 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 2 septembre 2009 8
6 avril 2008 à 13:00
Problème résolu!!!

Il fallait écrire If oCell.getString = "" Then...

Et là ça marche.
2
Bonjour.
Il est très dangereux de modifier l'indice d'un boucle for et de plus c'est inutile.
Remplace le code de ta boucle par
For k=1 To 16
oCell = oSheet.getCellByPosition(8,k-1)
If oCell.getValue = "" Then
oCell.SetString( "pas de champ")
End If
Next k

et cela devrait fonctionner.
Cordialement
Nengwalf.
0
Jgotheboss Messages postés 24 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 2 septembre 2009 8
20 mars 2008 à 11:56
Merci Nengwalf,

J'avais perdu espoir qu'on réponde à mon problème du coup j'arrive en retard! ^^
J'ai essayé avec ta version mais rien de change sur ma colonne composée de cases vides et de cases remplies. Aucun changement après l'exécution de la macro...
Avec ce que j'avais fait toutes les cases étaient remplacées par "pas de champ"... C'est pas mieux! ^^

Si vous avez d'autres idées merci de m'aider.
0