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 :

Problème de recopie de données d'une partie de feuille sur une autre feuille excel


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Par défaut Problème de recopie de données d'une partie de feuille sur une autre feuille excel
    pouvez vous tester ce code pour cela vous devez créer un dossier gestion a la racine de C:
    J'ai joint un fichier excel
    voici mon 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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    Sub Enregistre_et_Nouveau()
     
    Dim nom As Workbook
    Dim chemin As String, extension As String, nomfichier As String
    With Application
       .ScreenUpdating = False
       .EnableEvents = False
    End With
    ThisWorkbook.ActiveSheet.Copy
    ActiveSheet.UsedRange.Activate
     
    With Selection
       .Copy
       .PasteSpecial Paste:=xlValues
       .Validation.Delete
    End With
    extension = ".xls"
    If ActiveSheet.Name = "ticket" Then
    chemin = "C:\Gestion\"
    nomfichier = ActiveSheet.Range("D21") & ("-") & Format(Now(), "dd-mm-yy") & extension
    End If
     
    With ActiveWorkbook
        .SaveAs Filename:=chemin & nomfichier
        .Close
    End With
    With Application
        .ScreenUpdating = True
        .EnableEvents = True
        Dim c As Integer
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With
    End With
    ActiveSheet.PrintOut Copies:=1
    With ThisWorkbook
        With ActiveSheet
         c = .Range("D21").Value
        .Range("D21").Value = c + 1
        If .Name = "ticket" Then
        .Range("A7:D16").ClearContents
            End If
    End With
        .Save
    End With
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With
     
    End Sub
    Sur une plage de données (a chaque impressions renouvellées )Ce que je cherche a faire est assez simple, imprimer (ça marche) effacer certaines données ( ça marche aussi) Là ou ça se complique c'est l'enregistrement , je voudrais enregistrer la plage de cellules B6 à D22 sur une autre feuilles excel dans le même classeur, et que chaques enregistrement soit en dessous du précédent toujour sur la même feuille. Ce qui ce passe avec mon code actuel, il me crée un nouveau classeur a chaque nouveau ticket et m'enregistre la feuille complète macro comprise. merci de votre aide
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 1
    Dernier message: 03/01/2013, 12h45
  2. Réponses: 2
    Dernier message: 11/10/2012, 14h33
  3. Réponses: 3
    Dernier message: 06/04/2012, 14h31
  4. [Toutes versions] Protection sur une partie des cellules provoque une erreur à l'éxécution de la macro
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 31/01/2012, 15h36
  5. Réponses: 5
    Dernier message: 28/08/2007, 14h00

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