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 :

vba la copie change l'affichage sans changer pour autant le format


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 302
    Par défaut vba la copie change l'affichage sans changer pour autant le format
    Bonjour,

    Via une macro, je copie tous un onglet d'un fichier A vers un fichier B.

    Dans ma première colonne, j'ai une donnée en format standard qui correspond à une date sous la forme mm.aaaa

    Je ne l'ai pas mis en format date exprès pour ne pas galérer car je fais ensuite des comparaisons et au final il me le recopie en format standard mais comme un nombre. Je prends un exemple, je cherche à copier 03.2019 et je retrouve dans mon coller 3,2019.

    Comment faire?

    Voici mon code de copie-colle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    macro.Sheets(date_traitement).Range("A" & NbLigneAno & " : " & "I" & NbLigneAno + NbL - 2).Value = reporting.Sheets(ws.Name).Range("A" & "2" & ":" & "I" & NbL).Value
    Merci de votre aide,

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 176
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Via une macro, je copie tous un onglet d'un fichier A vers un fichier B.
    Pour copier une feuille d'un classeur vers un autre, on utilise la méthode Copy de l'objet Worksheet

    Exemple de la copie de la feuille nommée TimeSheet du classeur Toto.xlsx avec comme destination le classeur nommé titi.xlsx avant la première feuille de celui-ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub t() 
      Dim shtSource As Worksheet 
      Set shtSource = Workbooks("Toto.xlsx").Worksheets("TimeSheet")
      shtSource.Copy Before:=Workbooks("Titi.xlsx").Worksheets(1)
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par pepsister Voir le message
    Je ne l'ai pas mis en format date exprès pour ne pas galérer car je fais ensuite des comparaisons
    C'est une étrange déclaration.
    Je pense au contraire que mettre une date en texte est le meilleur moyen de "galérer".

    Le meilleur conseil que je peux te donner est de mettre une vraie date dans ta cellule avec un format date propre.

    je cherche à copier 03.2019 et je retrouve dans mon coller 3,2019.
    Si tu persistes dans ce mauvais choix, il faut que tu commences par mettre ta cellule destination au format texte et que tu y copies ensuite la valeur de la cellule source avec un PasteSpecial(xlPasteValue) ou un transfert par valeur du type Cible.Values = Source.Text.

Discussions similaires

  1. [XL-2013] VBA EXCEL - copie d'un range sans affichage
    Par Whitewolf79 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/03/2018, 17h15
  2. Réponses: 3
    Dernier message: 30/09/2016, 08h42
  3. vba me change la variable sans que je lui demande !
    Par Daniela_ dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 18/10/2013, 15h32
  4. JEE : affichage d'un formulaire aprés un choix du menu sans changer la page
    Par lavienormale dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 04/05/2011, 16h19
  5. [VBA-E] Copie de Feuille sans liaison
    Par Ania dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 27/04/2006, 17h35

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