rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Résolu

[VBA Excel] cellule vide

Posté par afrodje, le mercredi 6 février 2008 à 11:42:57
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
Configuration: Windows XP
Firefox 2.0.0.11
Répondre à afrodje  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Alex, le mercredi 6 février 2008 à 11:44:20
Bonjour,

Remplace

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

par

if empty(PysFeuille.getCellByPosition(debutColonne, PysLigEnCours)) then
Répondre à Alex

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
afrodje, le mercredi 6 février 2008 à 11:52:51
procedure de fonction non defini
Répondre à afrodje

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Darkito, le mercredi 6 février 2008 à 11:44:22
Bonjour,
si la cellule est vide, sa valeur est "" et pas 0 Tøƒ
Répondre à Darkito

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
afrodje, le mercredi 6 février 2008 à 11:54:06
ne fonctionne pas.
Aucun message de retour
Répondre à afrodje

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
laetitia02, le mercredi 6 février 2008 à 11:44:59
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
Répondre à laetitia02

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
afrodje, le mercredi 6 février 2008 à 11:56:20
Ta solution s'effectue à chaque fois (avec cellule vide, egale à 0, avec chaine de caractere,...)
Répondre à afrodje

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
afrodje, le mercredi 6 février 2008 à 12:01:34
En faite je ne suis pas sur excel mais open office calc...
Répondre à afrodje

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Darkito, le mercredi 6 février 2008 à 12:04:19
Donc ce n'est pas du vba... ? Tøƒ
Répondre à Darkito

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
afrodje, le mercredi 6 février 2008 à 12:11:34
on m'aurai mal renseigné...
Quel est le langage alors?
Répondre à afrodje

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
afrodje, le mercredi 6 février 2008 à 16:09:42
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 
Répondre à afrodje

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
afrodje, le vendredi 8 février 2008 à 09:42:13
--
1000101 et plus si affinité ;)
Répondre à afrodje

12


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Darkito, le vendredi 8 février 2008 à 10:24:54
Ce sera sans moi pour ta signature Tøƒ
A quand la matière "Comment faire une recherche Google ?" obligatoire dès la 6ème ?
Répondre à Darkito

13


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 bobtipitt, le lundi 24 mars 2008 à 17:10:03
ouai c vrai Etienne l-L
Répondre à bobtipitt
Logiciels pertinents trouvés dans les téléchargements
Télécharger Excel Viewer 2003Excel Viewer - Avec Microsoft Office Excel Viewer 2003, vous pouvez ouvrir, afficher et imprimer des classeurs Excel (fichiers XLS ), même...Catégorie: Tableur
Licence: Freeware/gratuit
Télécharger PSP Video 9 2.25PSP Video 9 - PSP Video 9 est un outil de conversion gratuit permettant de convertir des fichiers vidéo (avi, divx, mpeg, etc.) au formats...Catégorie: Edition vidéo
Licence: Freeware/gratuit
Télécharger MTV Video Converter 1.11.4MTV Video Converter - Le programme MTV Video Converter est un convertisseur vidéo vers le format MTV acceptant les formats d'entrée suivants : ...Catégorie: Conversion
Licence: Freeware/gratuit
Télécharger WinAVI Video Capture 2.0.0.1WinAVI Video Capture - WinAVI Video Capture peut capturer vos films en provenance de périphériques AV comme un magnétoscope, un camescope ou une...Catégorie: Edition vidéo
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « [VBA Excel] cellule vide »