Rajouter une condition de copie dans un code vba

  • Initiateur de la discussion Initiateur de la discussion fenec
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fenec

XLDnaute Impliqué
Bonjour le forum,

J’utilise un code pour copier un onglet et le recopier à la suite des autres qui fonctionne plutôt bien mais avec le temps mon fichier deviens de plus en plus gros d’où ma question :
Est-il possible de rajouter dans ce code de ne copier que les valeurs car je pense que les formules prennent pas mal de kilo avec le temps et comme les onglets copier ne sont la que pour consultations seul le tableau est utile.

Cordialement

Philippe
 

Pièces jointes

Dernière édition:
Re : Rajouter une condition de copie dans un code vba

Bonjour fenec.



Ajouter la ligne​
Code:
    ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value
après la ligne​
Code:
    Sheets(3).Copy after:=Sheets(Sheets.Count)
devrait faire ce que vous souhaitez. (Testez sur une copie de votre fichier, au cas où je n'aurais pas bien compris le problème.)​


Bonne soirée.


ℝOGER2327
#7356


Jeudi 26 Palotin 141 (Sainte Prétentaine, rosière - fête Suprême Quarte)
26 Floréal An CCXXII, 8,4948h - fusain
2014-W20-4T20:23:15Z
 
Re : Rajouter une condition de copie dans un code vba [Résolu]

Bonjour le forum, ROGER2327

Je reviens vers vous pour savoir s'il est possible de compléter encore non code,en effet ma feuille à copier comporte une macro afin d'écrire en majuscule.
En plus de supprimer les formules ( merci à ROGER2327 pour sa solution) est-il possible de supprimer également la macro lors de la copie?

Cordialement

Philippe

PS: vous joint une copie du fichier avec le code car celui-ci n'est pas dans mon premier fichier
 

Pièces jointes

Re : Rajouter une condition de copie dans un code vba [Résolu]

Re...


(...) ma feuille à copier comporte une macro afin d'écrire en majuscule.
En plus de supprimer les formules (...) est-il possible de supprimer également la macro lors de la copie?
(...)
Je pense que c'est possible. Au lieu de placer la procédure dans le module de code de la feuille, placez-le dans le module de code du classeur (ThisWorkbook dans votre classeur d'exemple).

Bien entendu, quelques modifications sont nécessaires. Essayez ce code dans module de code du classeur :​
VB:
Option Explicit

Private Sub Workbook_SheetChange(ByVal Feuille As Object, ByVal Cible As Range)
Dim Plage As Range
  If Feuille.Name = "Calendrier" Then
    If Cible.Count > 1 Then Exit Sub
    Set Plage = Feuille.Range("C3:AJ33")
    If Not Application.Intersect(Cible, Plage) Is Nothing Then
      Application.EnableEvents = False
      Cible.Value = UCase(Cible.Value)
      Application.EnableEvents = True
    End If
  End If
End Sub
(Pensez à supprimer la procédure du module de feuille...)


Bonne soirée.


ℝOGER2327
#7357


Vendredi 27 Palotin 141 (Saint Foin, coryphée - fête Suprême Quarte)
27 Floréal An CCXXII, 7,0380h - civette
2014-W20-5T16:53:28Z
 
Re : Rajouter une condition de copie dans un code vba

Suite...


J'ai répondu un peu rapidement ! Il vaudrait mieux écrire​
Code:
  If Feuille.CodeName = "Feuil3" Then
que​
Code:
  If Feuille.Name = "Calendrier" Then
Ainsi, vous pourrez modifier sans inconvénient le nom d'onglet de Feuil3.​


ℝOGER2327
#7358


Vendredi 27 Palotin 141 (Saint Foin, coryphée - fête Suprême Quarte)
27 Floréal An CCXXII, 7,2676h - civette
2014-W20-5T17:26:32Z
 
Re : Rajouter une condition de copie dans un code vba

Bonjour le forum, ROGER2327

Viens de tester votre solution, ca fonctionne très bien.

J'ai ensuite modifié par votre 2 ème réponse et ca fonctionne également.
Je peux changer le nom de l'onglet dans les deux solutions ou alors je n'ai pas compris votre remarque

Ainsi, vous pourrez modifier sans inconvénient le nom d'onglet de Feuil3.

Cordialement

Philippe.
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
501
Retour