IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

suppression clone fichier


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Avatar de frunch
    Homme Profil pro
    Développeur / comptable
    Inscrit en
    Janvier 2022
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur / comptable
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2022
    Messages : 174
    Par défaut suppression clone fichier
    Bonjour à tous,
    Je crée un clone sur le bureau avec un nom donné à l'ouverture d'un fichier et je voudrais supprimer le clone à sa fermeture.
    J'ai compris qu'il faut pas se trouver sur le clone du fichier à supprimer.
    Cà fonctionne avec ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Quitter2()
        Dim chem1$, UserAppli As String
        ExitApp = True
        UserAppli = Application.ActiveWorkbook.FullName
        If InStr(UserAppli, VBA.CreateObject("WScript.Network").UserName) > 0 Then
            ActiveWorkbook.Saved = True
            Application.ActiveWorkbook.ChangeFileAccess xlReadOnly
            Kill UserAppli
            If Application.Workbooks.Count > 1 Then
                Application.ActiveWorkbook.Close False
            End If
        End If
        ThisWorkbook.Close
    End Sub
    Mais que veut dire ce code? Il ne vérifie pas le chemin du fichier ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If InStr(UserAppli, VBA.CreateObject("WScript.Network").UserName) > 0 Then
    Merci

  2. #2
    Membre émérite Avatar de Valtrase
    Homme Profil pro
    Jeune retraité...
    Inscrit en
    Janvier 2016
    Messages
    516
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Jeune retraité...
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2016
    Messages : 516
    Par défaut
    Salut,
    Déjà faut ajouter le nom de fichier à Chem1...
    Et si tu tente de supprimer le classeur actif alors qu'il est ouvert tu va avoir un message d'erreur. je pense.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub TestDeletPath()
        Dim Chemin As String
        Chemin = "C:\Users\fpair\Desktop\" & Excel.Application.ThisWorkbook.Name
        If Dir(Chemin, vbNormal) > vbNullString Then Kill Chemin
    End Sub
    ps: Il serait bien de répondre aux précédent posts, pour savoir si l'on à pu t'aider...

  3. #3
    Membre très actif
    Avatar de frunch
    Homme Profil pro
    Développeur / comptable
    Inscrit en
    Janvier 2022
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur / comptable
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2022
    Messages : 174
    Par défaut
    Bonjour,
    Désolé, j'ai modifié ma demande vu que çà fonctionne.
    ps: Il serait bien de répondre aux précédent posts, pour savoir si l'on à pu t'aider...
    Voir ma réponse.
    Merci

  4. #4
    Membre émérite Avatar de Valtrase
    Homme Profil pro
    Jeune retraité...
    Inscrit en
    Janvier 2016
    Messages
    516
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Jeune retraité...
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2016
    Messages : 516
    Par défaut
    Re,
    Je pense que tu mélanges torchons et serviettes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Excel.Application.ThisWorkbook.FullName
    Renvoie le chemin de classeur. Dans mon cas par exemple il n'est pas sur "C:\Utilisateur....." puisque enregistré sur un serveur.

    If InStr(UserAppli, VBA.CreateObject("WScript.Network").UserName) > 0Then
    Pourquoi utiliser un objet alors que VBA contient la fonction Environ qui te donne le même résultat
    Teste dans la fenêtre d'exécution cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ? Environ("UserProfile")
    Donc tu dois vérifier si le fichier et sur le profil utilisateur , et si oui tu le supprime.

  5. #5
    Membre très actif
    Avatar de frunch
    Homme Profil pro
    Développeur / comptable
    Inscrit en
    Janvier 2022
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur / comptable
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2022
    Messages : 174
    Par défaut
    Re Valtrase,
    Je suis sur mon Pc et n'ai pas encore la possibilité de tester çà sur un serveur.

    La commande me donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ? Environ("UserProfile")
    C:\Users\fpair

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 524
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 524
    Par défaut
    Salut,
    Citation Envoyé par Valtrase Voir le message
    Pourquoi utiliser un objet alors que VBA contient la fonction Environ qui te donne le même résultat
    Teste dans la fenêtre d'exécution cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ? Environ("UserProfile")
    Je pense que tu trouveras une réponse ici:
    https://stackoverflow.com/questions/...s-advapi32-dll

    PS: Ce n'est pas UserProfile dont tu as besoin, mais UserName.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CVS] Répercuter les suppressions de fichiers
    Par efaure dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 17/05/2004, 17h34
  2. [BATCH]Suppression de fichier
    Par alxkid dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 21/04/2004, 13h25
  3. Réponses: 4
    Dernier message: 16/04/2004, 08h20
  4. Auto suppression de fichier
    Par pato dans le forum Langage
    Réponses: 4
    Dernier message: 05/03/2004, 09h09
  5. Suppression de fichiers
    Par wasch dans le forum C++Builder
    Réponses: 6
    Dernier message: 20/11/2003, 16h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo