Correction écriture en vba

Résolu

Bonjour;

J'ai un bouton Groupe 59 pour copier une feuille vers une nouvelle autre feuille dans un classeur

Sub Groupe59_QuandClic()
'Sheets("mars 2017").Copy After:=Sheets(3)
'Sub ExtraitVersAutreFeuille()
  'critere = InputBox("Critere?")
  'If critere = "" Then Exit Sub
  '[A1].AutoFilter Field:=5, Criteria1:="*" & critere & "*"
  'Application.DisplayAlerts = False
  'On Error Resume Next
  'Sheets(critere).Delete
  'Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Copy after:=Sheets(Sheets.Count)
[x5].Value = DateSerial(Year(Date), Month(Date) - 1, 1)
Range("s10,s14,s18,s22,s26,s30,s34,s38,s42,s59,s63,s67,s71,s75,s79,s83,s87,s91,s95") = ""
test = Application.Proper(Format(Range("y7"), "mmm-yyyy"))
ActiveSheet.Name = test
End Sub

Mais j'ai plusieurs formules à copier integrellement sans m'interroger.

Comment écrire en VBA de copier aussi les formules?

Merci d'avance.

3 réponses

  1. Modérateur

    Bonjour,

    Au lieu de nous faire une copie de ton code qui est un peu imbuvable, peux tu nous dire exactement ce que tu veux faire ?

    Tu veux copier une feuille entière, ou juste un tableau ? Peut-on voir le fichier ?

    m@rina


    1
    1. Bonjour

      Je veux copier une feuille en créant une nouvelle feuille dans le même classeur.

      Mais à chaque fois que j'exécute le bouton (mois suivant) il y a 12 fenêtres de boite de dialogue qui s'ouvrent : (une formule ou une feuille que vous voulez déplacer contient le nom " 12 noms....." qui existe déjà sur la feuille de destination, voulez-vous utiliser cette version oui / non) et à chaque je clique sur oui (12 fois).

      Comment est ce que je peux éviter ces 12 boîtes de dialogue ?

      Je ne sais pas comment joindre le fichier, pouvez-vous m'envoyer le lien pour joindre le fichier ?

      Merci pour votre collaboration.

      1
      1. Modérateur

        Je ne sais pas ce qu'est ton bouton "Mois suivant".
        Mais pour juste copier une feuille, il fautk 2 lignes de code :

        nbf = ActiveWorkbook.Sheets.Count
        ActiveSheet.Copy after:=Sheets(nbf)
        End Sub

        S'il y a des noms dans la feuille, ils se répéteront dans la nouvelle feuille à condition que l'étendue soit juste la feuille et nom le classeur.

        m@rina


        0