begin process at 2010 03 22 10:21:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

General

 > 

gestion des feuilles excel


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

gestion des feuilles excel

jeudi 6 mars 2008 à 10:44:55 | gestion des feuilles excel

freshyback

Bonjour,

Je cherche à mettre en place une macro qui va gérer les noms de feuilles
En gros, j'ai par exemple les feuille "toto" et "titi" qui existe dans mon classeur et qui sont referencé dans la colonne B2 de la feuille "paramètres"
Si on supprime "toto" ou "titi" ou les deux j'amerais supprimer egalement "toto" et/ou "titi" de ma liste dans la feuilles "paramètres"

voici mon code
Mais il ne le gère pas vraiment :


Sub MonTest()
  
Dim ws As Worksheet
Sheets("Paramètres").Activate
Range("B2").Select

    Set Plage = Range("B2:B26")
        For Each Cellule In Plage
        If Cellule.Value = "" Then
   For Each ws In Worksheets
        If ws.Name = Cellule.Value Then
        Cellule.Value.Delete
            Exit For
        End If
        Next ws
        End If
    Next Cellule
End Sub


Quelqu'un pour m'aider?
Merci
jeudi 6 mars 2008 à 10:58:00 | Re : gestion des feuilles excel

NHenry

Membre Club
Bonjour

Je te propose 2 versions :

Private Function TestExistanceVersion Erreur(byval pSheetName as String) as boolean
On Local Error Goto Err_TestExistanceVersion Erreur
    dim lObj as object
    set lObj=Sheets(pSheetName)
    TestExistanceVersion Erreur=True
Exit Function
Err_TestExistanceVersion Erreur:
    Err.Clear
    On error goto 0
    TestExistanceVersion Erreur=False
End function


Private Function TestExistanceVersionBoucle(byval pSheetName as String) as boolean
    Dim lObj as Object
    For Each lObj in Sheets
       If lObj.Name=pSheetName Then
          TestExistanceVersionBoucle=True
          Exit function
       End if
    Next
    TestExistanceVersionBoucle=False
End function


Ensuite pour faire ton test :
Sub MonTest()
    Dim ws As Worksheet
    Sheets("Paramètres").Activate
    Range("B2").Select
    Set Plage = Range("B2:B26")
    For Each Cellule In Plage
        If Cellule.Value = "" Then
          If TestExistance*(Cellule.Value)=False Then '=False peut être remplacé par l'opératuer Not
            Cellule.Value.Delete
        End If
        End If
    Next Cellule
End Sub

Je pense que c'est tout bon, je reste à l'écoute.

Dans Word, j'Excel. (juste pour la citation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
jeudi 6 mars 2008 à 11:09:06 | Re : gestion des feuilles excel

freshyback

Merci Nico,

Mais lorsque j'exécute le module
J'ai une erreur 424
dans sub Montest()

la ligne

cellule.value.delete ????

Est ce normal?
jeudi 6 mars 2008 à 11:13:41 | Re : gestion des feuilles excel

Firelion

Moi j'avais fait ça :

Set Plage = Range("B2:B26")
For Each Cellule In Plage
    Marqueur = 0
    For Each Worksheet In Worksheets
        If Cellule.Value = Worksheet.Name Then
            Marqueur = 1
        End If
    Next Worksheet
    If Marqueur = 0 Then
        Cellule.Value = ""
    End If
Next Cellule

jeudi 6 mars 2008 à 11:21:23 | Re : gestion des feuilles excel

freshyback

En fait je viens de contater une erreur

Sub MonTest()
    Dim ws As Worksheet
    Sheets("Paramètres").Activate
    Range("B2").Select
    Set Plage = Range("B2:B26")
    For Each Cellule In Plage
        If Cellule.Value <> "" Then
          If Not TestExistance * (Cellule.Value) Then  '=False peut être remplacé par l'opératuer Not
            Cellule.Value.Delete
        End If
        End If
    Next Cellule
End Sub

il faut que la cellule soit non vide

  If Cellule.Value <> "" Then

donc on doit tester si la feuille titi n'existe plus et que son nom apparait dans la liste on supprime le nom

jeudi 6 mars 2008 à 11:25:11 | Re : gestion des feuilles excel

freshyback

A priori ton code marche Firelion

Merci c'et résolu ;-)
jeudi 6 mars 2008 à 12:04:27 | Re : gestion des feuilles excel

NHenry

Membre Club
Bonjour

Note :
TestExistance*
Signifie que c'est là qu'il faut utiliser une fonction proposée, le "*" doit être remplacé par "VersionBoucle" ou "VersionErreur".

Dans Word, j'Excel. (juste pour la citation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
jeudi 6 mars 2008 à 12:08:51 | Re : gestion des feuilles excel

freshyback

je l'ai fait et çà marche
thx
jeudi 6 mars 2008 à 12:20:02 | Re : gestion des feuilles excel

PCPT

Administrateur CodeS-SourceS
salut,
pense au bouton "réponse acceptée" sur la ou les réponses qui ont résolu ton problème

ps : attention à la rubrique, ici en VB6? pas VBA normalement?!!!


Prenez un instant pour répondre à ce sondage svp


Cette discussion est classée dans : feuilles, cellule, ws, toto, if


Répondre à ce message

Sujets en rapport avec ce message

Aide dans ACCESS97 [ par Jeep ] BonjourDans ACCESS97 (SR2B) (avec winnt4 SP4) Après avoir crée un formulaire me permettant d'introduire l'adresse de stockage d'un fichier quelconque Affichage d'une cellule de plusieurs feuilles Excel sous VB [ par sadikenpanik ] HOP HOP HOP !J'ai un pitit (en fait gros) soucis !!Il faut que je fasse défiler dans une listebox (ou combo ou autre) la même cellule de plusieurs feu vb+excel gerer le font de 2 chaines dans une même cellule [ par louly ] alors pour faire simple j'ai une spreadsheet dans laquel je met qqchose de connue("toto ") et le resultat d'une requete (result!tata) dans une même ce souligner qu'une partie d'une cellule excel [ par louly ] alors pour faire simple j'ai une spreadsheet dans laquel je met qqchose de connue("toto ") et le resultat d'une requete (result!tata) dans une même ce récupérer le contenu d'une cellule sur une autre page [ par ptitemel62 ] Bonjour à tous, Ds le cadre de mon boulot, j'ai créé un classeur contenant plusieurs feuilles récapitulant des lois et décrets. Toutes les feuilles se mise à jour du sommaire ( noms de feuilles) [ par fi0011 ] Bonjour, Ce site m'a été très utile depuis quelques jours, depuis que je travaille sur un fichier excel. Pourtant je suis sur un probème que je n'arri Excel [ par Vincent666 ] Bonjour à tous. J'ai une petite question à propos d'excel. Je souhaite renomer une cellule Excel, genre la C3 en Toto. J'ai donc fait pour cela une m probleme avec un private sub sur excel 2000 [ par bobbob83 ] bonjour j'ai fais une macro pour copier une cellule mais j'ai quelques problemes que je n'arrive pas a résoudre la mocro Pb Fond Cellule excel [ par dirickles ] Salut a tous,Voilà mon probleme,dans une macro je vais lire la date actuelle que je compare à un e date avec 7 jours en moins.Si ma date est supérie nom de feuilles en variable [ par charly2812 ] Bonjour,j'aimerias savoir s'il est possible de passer le nom d'une feuille en variable.par exemple, dans la commende :worksheets("Toto").cells(1,1)j'a


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,874 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales