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 :

modification d'une partie de code [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut modification d'une partie de code
    bonjour a tous le forum
    je suis bloqué avec un code pour la sauvegarde de ma feuille voici le 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
    Private Sub nouvellefeuille_Click()
    Dim chemin As String, vname As String
    Dim plage As Range
    Dim dlig As Byte
    Dim code As Integer
    ' nouvellefacturedevis Macro
    code = WorksheetFunction.Match(ActiveSheet.Range("c6"), _
        Sheets("facturation").Range("c2:c" & Sheets("facturation").Range("c65536").End(xlUp).Row), 0) + 3
    Sheets("facturation").Copy
    ActiveSheet.Shapes("commandbutton1").Select
        Selection.Delete
    With Cells
        .Copy
        .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
    End With
    Range("A1").Select
    Application.CutCopyMode = False
    Select Case UCase(Range("D2"))
    Case Is = "FACTURE", "FACTURE SAV", "FACTURE D'ACOMPTE": chemin = "C:\facture\facture\"
    Case Else: chemin = "C:\facture\devis\"
    End Select
    vname = Range("c17") & "" & Range("I5") & ".xls"
    With ActiveWorkbook
        .SaveAs Filename:=chemin & vname
        .Close
    End With
    With Sheets("facturation")
        dlig = .Range("C19").End(xlDown)(1).Row
        If dlig > 20 Then
            Set plage = .Range("C20:B" & .Range("C20").End(xlDown)(1).Row - 1)
            plage.EntireRow.Delete
        End If
     
        .Range("C19:P20").ClearContents
        .Range("H5:H8").ClearContents
        'incrémentation
        Select Case UCase(Range("D2"))
            Case Is = "FACTURE"
            Range("B9") = Range("B9") + 1
            Case Is = "DEVIS"
            Range("B8") = Range("B8") + 1
            Case Is = "FACTURE D'ACOMPTE"
            Range("B10") = Range("B10") + 1
            Case Is = "FACTURE SAV"
            Range("B11") = Range("B11") + 1
        End Select
    End With
     
    End Sub
    ce code est parfait pour une page de facture mais des qu'il y en a 2 c'est fini il ne prends en charge que la 1ère page

    et voici ce qui me gene afin que le code prenne en charge les pages qui sont crées a la suite

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    With Sheets("facturation")
        dlig = .Range("C19").End(xlDown)(1).Row
        If dlig > 20 Then
            Set plage = .Range("C20:B" & .Range("C20").End(xlDown)(1).Row - 1)
            plage.EntireRow.Delete
        End If
    dont je peux avoir de 4 à8 pages a la suite, mais le format des autres pages reste identiques a la première a l'exeption de l'entête

    merci pour vos idées

    cordialement

    Pascal

  2. #2
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    La réponse dépend de la structure de ton fichier.
    Faut-il traiter toutes les feuilles ? De la feuille 3 à la feuille 8 ? de la feuille x à la dernière feuille ? Certaines feuilles ayant un nom ou une partie de nom bien précis ?

  3. #3
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    Bonjour fring

    Faut-il traiter toutes les feuilles ? De la feuille 3 à la feuille 8
    il ne s'agit pas de feuille mais de pages dans la feuille qui se créées par saut de page en recopiant le pied de page en fin de 1ère page
    dans mon essai donc cela commence a la ligne19 et fini a 53 fin de 1ère page puis reprends la 13ème ligne après,(en ayant remis le pied de page en 3ème et 4 ème lignes puis un morceaux de l'entête en ligne l10à12) puis refait un sut identique sur les autres pages

    voila ce que je peux dire a cette heure tardive ou mes idées ne sont plus claires

    cordialement

    Pascal

  4. #4
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    En lisant ta réponse je me retrouve comme une poule venant de découvrir un tire bouchon ...
    Je pense que le plus simple est de joindre un bout de fichier avec ce que tu as et ce que tu souhaites obtenir sinon je sens qu'on va tourner en rond.

  5. #5
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour fring

    merci de ta réponse, je me doutais bien qu'un fichier serai plus parlant alors j'en ai simplifié un et voici le lien

    c'est un exemple qui comporte 2 pages1/2 de remplies mais je peux en avoir jusque 8

    merci pour tout
    Pascal

  6. #6
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Il me manque encore un petit détail...tu cherches à obtenir quoi ? Supprimer les données ?

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

Discussions similaires

  1. [Système] Modification d'une partie d'une variable
    Par gotcha5832 dans le forum Langage
    Réponses: 14
    Dernier message: 12/04/2007, 14h28
  2. comprendre une partie du code
    Par mademoizel dans le forum ASP.NET
    Réponses: 4
    Dernier message: 09/02/2007, 11h40
  3. comprendre une partie de code
    Par menuge dans le forum Langage
    Réponses: 24
    Dernier message: 03/09/2006, 20h44
  4. une partie du code a disparu
    Par recup dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 08/03/2005, 10h08
  5. Indenter une partie du code
    Par KooX dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 23/05/2004, 17h38

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