VBA comment effacer la derniere cellule plein
Résolu/Fermé
julsof
Messages postés
13
Date d'inscription
jeudi 7 août 2008
Statut
Membre
Dernière intervention
23 septembre 2008
-
13 août 2008 à 14:41
Leahkim Messages postés 3081 Date d'inscription jeudi 15 novembre 2007 Statut Membre Dernière intervention 2 mars 2014 - 13 août 2008 à 15:30
Leahkim Messages postés 3081 Date d'inscription jeudi 15 novembre 2007 Statut Membre Dernière intervention 2 mars 2014 - 13 août 2008 à 15:30
A voir également:
- VBA comment effacer la derniere cellule plein
- Dernière version ccleaner gratuit français - Télécharger - Nettoyage
- Comment aller à la ligne dans une cellule excel - Guide
- Supprimer dernière page word - Guide
- Excel cellule couleur si condition texte - Guide
- Excel compter cellule couleur sans vba - Guide
5 réponses
Leahkim
Messages postés
3081
Date d'inscription
jeudi 15 novembre 2007
Statut
Membre
Dernière intervention
2 mars 2014
281
13 août 2008 à 14:54
13 août 2008 à 14:54
if (la derniere cellule pleine de la colonne E = 0) then (efface là) sinon (ne fait rien)
ça c'est pas vraiment possible, il n y a pas de "derniere cellule pleine" en VB ..., enfin je pense pas.
il te faut un while:
Dim A as Integer
WHILE (a<ton nombre de case maximum)
IF cells(A,E)=="" THEN row(A).select = true
selection.delete
WEND
la syntaxe est pas excate, mais l'algo est la
ça c'est pas vraiment possible, il n y a pas de "derniere cellule pleine" en VB ..., enfin je pense pas.
il te faut un while:
Dim A as Integer
WHILE (a<ton nombre de case maximum)
IF cells(A,E)=="" THEN row(A).select = true
selection.delete
WEND
la syntaxe est pas excate, mais l'algo est la
julsof
Messages postés
13
Date d'inscription
jeudi 7 août 2008
Statut
Membre
Dernière intervention
23 septembre 2008
1
13 août 2008 à 15:03
13 août 2008 à 15:03
merci pour ta réponse rapide leahkim,
en fait je pense pouvoir trouver une solution à mon problème.
J'arrive à sélectionner la cellule dont j'ai besoin ( à me placer dessus) pas de problème.
Ce que j'essaie de faire sans y arriver encore, c'est de comparer cette cellule et de dire si elle est = O alors je la delete sinon rien
si tu as d'autres idées je suis preneur
merci encore
en fait je pense pouvoir trouver une solution à mon problème.
J'arrive à sélectionner la cellule dont j'ai besoin ( à me placer dessus) pas de problème.
Ce que j'essaie de faire sans y arriver encore, c'est de comparer cette cellule et de dire si elle est = O alors je la delete sinon rien
si tu as d'autres idées je suis preneur
merci encore
Leahkim
Messages postés
3081
Date d'inscription
jeudi 15 novembre 2007
Statut
Membre
Dernière intervention
2 mars 2014
281
13 août 2008 à 15:10
13 août 2008 à 15:10
"=0"
tu veux dire égale au chiffre 0 ou vide ?
égale a 0 c'est: cells(COORDONNEES).value == 0
vide c'est cells(COORDONNEES).value == ""
tu veux dire égale au chiffre 0 ou vide ?
égale a 0 c'est: cells(COORDONNEES).value == 0
vide c'est cells(COORDONNEES).value == ""
julsof
Messages postés
13
Date d'inscription
jeudi 7 août 2008
Statut
Membre
Dernière intervention
23 septembre 2008
1
13 août 2008 à 15:29
13 août 2008 à 15:29
en fait c'est ="0" , le chiffre 0 et je viens de trouver la solution ;-)
If Range("E" & Range("E65536").End(xlUp).Row + 0) = "0" Then Rows(ActiveCell.Row).Delete
'si la cellule au dessus de la derniere cellule de la colonne E est = à 0, alors sélectionne la ligne qui contient la cellule et efface la.
merci de m'avoir aiguillé.
du coup mon code est comme ceci :
Sub creation_article()
Dim creation_article As String
MsgBox "Vous allez créer un nouvel article H2O", vbDefaultButton1
reponse = MsgBox("Voulez-vous continuer ?", vbYesNo)
If reponse = vbNo Then Exit Sub
Ref = InputBox("Indiquez la REFERENCE de l'article", "CREATION D'ARTICLE")
désignation = InputBox("Indiquez DESIGNATION de l'article", "CREATION D'ARTICLE")
PUachatHT = InputBox("Indiquez le Prix Unitaire d'achat HT", "CREATION D'ARTICLE")
PUventeHT = InputBox("Indiquez le Prix Unitaire de vente HT", "CREATION D'ARTICLE")
Sheets("base").Range("N1").Value = Ref
Sheets("base").Range("O1").Value = désignation
Sheets("base").Range("P1").Value = PUachatHT
Sheets("base").Range("Q1").Value = PUventeHT
Sheets("base").Select
Range("N1:Q1").Select
Selection.Copy
Range("A" & Range("A65536").End(xlUp).Row + 1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("base").Select
Sheets("base").Select
Range("N1:Q1").Select
Selection.ClearContents
Range("E" & Range("E65536").End(xlUp).Row + 0).Select
Selection.Copy
Range("E" & Range("E65536").End(xlUp).Row + 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
If Range("E" & Range("E65536").End(xlUp).Row + 0) = "0" Then Rows(ActiveCell.Row).Delete
Sheets("accueil").Select
End Sub
If Range("E" & Range("E65536").End(xlUp).Row + 0) = "0" Then Rows(ActiveCell.Row).Delete
'si la cellule au dessus de la derniere cellule de la colonne E est = à 0, alors sélectionne la ligne qui contient la cellule et efface la.
merci de m'avoir aiguillé.
du coup mon code est comme ceci :
Sub creation_article()
Dim creation_article As String
MsgBox "Vous allez créer un nouvel article H2O", vbDefaultButton1
reponse = MsgBox("Voulez-vous continuer ?", vbYesNo)
If reponse = vbNo Then Exit Sub
Ref = InputBox("Indiquez la REFERENCE de l'article", "CREATION D'ARTICLE")
désignation = InputBox("Indiquez DESIGNATION de l'article", "CREATION D'ARTICLE")
PUachatHT = InputBox("Indiquez le Prix Unitaire d'achat HT", "CREATION D'ARTICLE")
PUventeHT = InputBox("Indiquez le Prix Unitaire de vente HT", "CREATION D'ARTICLE")
Sheets("base").Range("N1").Value = Ref
Sheets("base").Range("O1").Value = désignation
Sheets("base").Range("P1").Value = PUachatHT
Sheets("base").Range("Q1").Value = PUventeHT
Sheets("base").Select
Range("N1:Q1").Select
Selection.Copy
Range("A" & Range("A65536").End(xlUp).Row + 1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("base").Select
Sheets("base").Select
Range("N1:Q1").Select
Selection.ClearContents
Range("E" & Range("E65536").End(xlUp).Row + 0).Select
Selection.Copy
Range("E" & Range("E65536").End(xlUp).Row + 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
If Range("E" & Range("E65536").End(xlUp).Row + 0) = "0" Then Rows(ActiveCell.Row).Delete
Sheets("accueil").Select
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Leahkim
Messages postés
3081
Date d'inscription
jeudi 15 novembre 2007
Statut
Membre
Dernière intervention
2 mars 2014
281
13 août 2008 à 15:30
13 août 2008 à 15:30
met le sujet en résolu alors merci