[VBA Excel] cellule vide

Résolu
afrodje -  
bobtipitt Messages postés 61 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,


Je dois effectué une condition si la cellule n'est pas vide et ne contienne pas les caractere "quantite".

J'ai deja ceci

 if PysFeuille.getCellByPosition(debutColonne, PysLigEnCours).value = 0 then
      PysFeuille.removeRange(PysCell.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
      PysFeuille.removeRange(PysCell_plus_1.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
      PysFeuille.removeRange(PysCell_plus_2.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
   end if


Ce code s'execute meme si la cellule est vide.

Merci

7 réponses

Alex
 
Bonjour,

Remplace

if PysFeuille.getCellByPosition(debutColonne, PysLigEnCours).value = 0 then

par

if empty(PysFeuille.getCellByPosition(debutColonne, PysLigEnCours)) then
0
afrodje
 
procedure de fonction non defini
0
Darkito Messages postés 1191 Date d'inscription   Statut Membre Dernière intervention   545
 
Bonjour,
si la cellule est vide, sa valeur est "" et pas 0
0
afrodje
 
ne fonctionne pas.
Aucun message de retour
0
laetitia02 Messages postés 424 Date d'inscription   Statut Membre Dernière intervention   129
 
bonjour essai sa
if not isnull(PysFeuille.getCellByPosition(debutColonne, PysLigEnCours).value) then
PysFeuille.removeRange(PysCell.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
PysFeuille.removeRange(PysCell_plus_1.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
PysFeuille.removeRange(PysCell_plus_2.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
end if
0
afrodje
 
Ta solution s'effectue à chaque fois (avec cellule vide, egale à 0, avec chaine de caractere,...)
0
afrodje
 
En faite je ne suis pas sur excel mais open office calc...
0
Darkito Messages postés 1191 Date d'inscription   Statut Membre Dernière intervention   545
 
Donc ce n'est pas du vba... ?
0
afrodje > Darkito Messages postés 1191 Date d'inscription   Statut Membre Dernière intervention  
 
on m'aurai mal renseigné...
Quel est le langage alors?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
afrodje
 
C'est Open Office Basic


Et voila le code

Sub PysRazLignes

'Ci-dessous attention les numéros de ligne et colonne commencent à zéro

const PysLigDeb = 1         'Adapter en fonction du nombre de lignes
const PysLigFin = 24     'Adapter en fonction du nombre de lignes


dim PysClasseur as object, PysFeuille as object, PysPlage as object
dim PysLigEnCours as long
dim debutColonne as Variant
dim i as integer
dim nombre_ligne as integer

'nombre de la colonne debute à 0 (donc ex : 5 donne la colonne F)
debutColonne = Array(1,5,9)

'numero de ligne entre les 2 tableaux
nombre_ligne = 12




' Accès au document courant
PysClasseur = thiscomponent

'Dans ce classeur accès par son nom à une feuille
PysFeuille = PysClasseur.sheets.getByName("Feuil1")


for i = 0 to 2 step 1
						'Boucle depuis la dernière ligne à traiter jusqu'à la première
						for PysLigEnCours = PysLigFin to PysLigDeb step - 1
						
						   PysCell = PysFeuille.getCellByPosition(debutColonne(i), PysLigEnCours)   'Accès à la cellule
						   PysCell_plus_1 = PysFeuille.getCellByPosition((debutColonne(i)+1), PysLigEnCours)   'Accès à la cellule+1
						   PysCell_plus_2 = PysFeuille.getCellByPosition((debutColonne(i)-1), PysLigEnCours)   'Accès à la cellule-1
						  
						  
						 
						     if IsNumeric(PysCell.STRING) = True THEN
						         if PysFeuille.getCellByPosition(debutColonne(i), PysLigEnCours).value = 0 THEN
								      
										          PysFeuille.removeRange(PysCell.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
										          PysFeuille.removeRange(PysCell_plus_1.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
										          PysFeuille.removeRange(PysCell_plus_2.RangeAddress, com.sun.star.sheet.CellDeleteMode.UP)
										          
										           'inserer une ligne vide
										           PysCell = PysFeuille.getCellByPosition(debutColonne(i), nombre_ligne)  
										        
										
						         end if 
						    end if 
						   
						next PysLigEnCours
next i

End Sub 
0
afrodje Messages postés 759 Date d'inscription   Statut Membre Dernière intervention   168
 
--
1000101 et plus si affinité ;)
0
Darkito Messages postés 1191 Date d'inscription   Statut Membre Dernière intervention   545
 
Ce sera sans moi pour ta signature
0
bobtipitt Messages postés 61 Date d'inscription   Statut Membre Dernière intervention   2
 
ouai c vrai
0