Extraire des données d'un fichier de base qui change

Bonjour à tous,

Etant novice dans l'utilisation d'Excel, j'aimerai vraiment recevoir un peu d'aide

A chaque fin de semaine, je dois faire un reporting du Chiffre d'affaire de ma zone

Nous avons à notre disposition chaque jour un fichier Excel tiré de SAP BW qui regroupe toutes les zones de mon entreprise

J'aimerai savoir s’il est possible de créer une fonction pour copier les zones qui m'intéresse du fichier de base en sachant que celui-ci change (se rallonge) tout au long du mois

Je ne sais pas si l'utilisation d'une macro est possible

Merci d'avance pour votre aide...Je suis vraiment désespéré car je perds un temps précieux à toujours formater et supprimer les colonnes, lignes qui me sont inutiles.

Merci encore pour vos réponses

bonjour

il faudrait un exemple du fichier de départ et de celui que tu veux

Bonjour,

Déjà merci beaucoup pour ta réponse

ci-joint le fichier de base

J'ai besoin de garder toute la partie qui commence par "Export Europe" soit de la ligne A 1095 jusqu’à J 1095 ... la partie ce termine toujours par UK : J 1154 dans ce cas

Il faut supprimer la colonne A ; B ; D ; F ; H ; I

Le problème c'est que plus les jours passent, plus la partie "Export Europe" s'agrandie

Merci beaucoup pour ton aide


Voici le fichier final qu'il me faudrait

Merci d'avance pour votre aide

44fcihier-de-base.zip (49.98 Ko)
38fcihier-final.zip (4.58 Ko)

Bonjour à tous,

résultats en feuille "Final"

Sub ExtraitPlage()
Dim Lg&, x%, y%, c As Range
    Application.ScreenUpdating = False
    Lg = Range("c" & Rows.Count).End(xlUp).Row
    With Sheets("Final")
            Columns("c:j").Copy Destination:=.Range("a1")
            .Rows("1:11").Delete
            .Rows("3:" & Lg).Delete
            Set c = Range("c10:c" & Lg).Find("Grand Export", LookIn:=xlValues)
        If Not c Is Nothing Then
                x = c.Row

            Set c = Range("c10:c" & Lg).Find("UK", LookIn:=xlValues)
            If Not c Is Nothing Then
                y = c.Row + 1

                Range(Cells(x, "c"), Cells(y, "j")).Copy Destination:=.Range("a3")
                .Range("b1,d1,f1:g1").EntireColumn.Delete
            Else: GoTo Fin
            End If
        Else: GoTo Fin
        End If
        Application.Goto .Range("a1"), Scroll:=True
    End With
Exit Sub
Fin: MsgBox ("n'existe pas !")
End Sub

Amicalement

Claude

Bonjour,

Merci beaucoup pour ta réponse, elle est vraiment utile

Est-il possible de rajouter des choses à la macro ?

il Faudrait que tout en haut soit marque : "CA Export au" "Date du jours" en A1

Je sais pas si cela est possible

Merci encore pour ton aide

Bonjour à tous,

Remplace la macro par celle-ci

Sub ExtraitPlage()
Dim Lg&, Lg1&, x%, y%, c As Range
    Application.ScreenUpdating = False
    Lg1 = Range("j1").End(xlDown).Row           '1ère ligne d'en-tête
    Lg = Range("j" & Rows.Count).End(xlUp).Row  'dernière ligne tableau

    With Sheets("Final")
        .Cells.Clear
            '--- cherche 1ère ligne à copier ---
            Set c = Range("a10:a" & Lg).Find("Export Europe", LookIn:=xlValues)
        If Not c Is Nothing Then
                x = c.Row
            '--- cherche dernière ligne à copier ---
            Set c = Range("c10:c" & Lg).Find("UK", LookIn:=xlValues)
            If Not c Is Nothing Then
                y = c.Row + 1
            Else: GoTo Fin
            End If
        Else: GoTo Fin
        End If
            Range(Cells(Lg1, "c"), Cells(Lg1 + 1, "j")).Copy Destination:=.Range("a1")
            Range(Cells(x, "c"), Cells(y, "j")).Copy Destination:=.Range("a3")
            .Range("b1,d1,f1:g1").EntireColumn.Delete
            .Range("a1") = "CA Export au " & Date
            .Range("a1").HorizontalAlignment = xlGeneral
            .Range("a1:d1").EntireColumn.AutoFit
            Application.Goto .Range("a1"), Scroll:=True
    End With
Exit Sub
Fin: MsgBox ("n'existe pas !")
End Sub

Claude

Bonjour,

Merci beaucoup Claude, le fichier marche super bien

dernière demande : je sais j'en demande beaucoup

est-il possible :

  • de rajouter automatiquement les sous totaux que j'ai rajouté dans le fichier joins
  • de rajouter une ligne dans le format que j'ai mis juste avant les sous totaux : il faudra que je vienne la remplir manuellement

Merci beaucoup pour votre aide, je trouve ca super sympa et très très util

Merci encore

52sous-totaux.zip (10.51 Ko)

re,

çà sera toujours l'Espagne que tu veux isoler ?

Claude

Bonjour,

L'espagne et le UK doivent etre isolés

Si ca demande trop de travail je le ferais en manuel

Merci d'avance pour ton aide

re,

Précision :

il n'y aura rien entre Espagne et UK ?

UK peut avoir plusieurs lignes ? (actuellement, ne prend qu'une ligne)

Claude

Re,

Entre Espagne et UK il n'y aura jamais rien

Le UK fera toujours qu'une seule ligne

Merci beaucoup pour ton aide

re,

Pour le 1er sous total, j'utilise les couleurs de fond (à vérifier quand même)

par principe, je ne fusionne pas les cellules dans mes macros.

ci-joint, ton fichier

Amicalement

Claude

Re Claude,

merci beaucoup de t'etre penché sur ce probleme

Je ne comprends pas comment ca marche, pourquoi je ne peux pas avoir juste un feuille final ?

est-il necessaire de garder cette page intermediaire ?

Si je change les données de la page 1, les données de la page 2 changent (les sous totaux marchent pas) et les données + sous totaux de la page 3 ne changent pas du tout

Peux tu une nouvelle fois m'aider ?

Merci d'avance

re,

La page 3 "demande" est à virer,

c'était juste pour moi, çà me servait de modèle

Claude

Ok,

J'ai donc viré la page "demande", mais le total de la zone export "1er sous total" ne marche

Quand je modifie une ligne d'une zone à l'export, cela ne change pas le sous total 52770,21 €

Peux tu voir si tu peux modifier ca ?

Merci beaucoup

si tu modifie quoi que çà soit,

il faut relancer la macro

OK,

je n'arrive pas a avoir des sous totaux mais je le ferais en manuel, c'est deja super sympa ce que t'as fait

Merci encore

Je vais essayé de continuer

re,

y-a pas de raison !

envoie le fichier en expliquant où çà coince

Claude

Excuse moi .. ca marche trop bien, c'est juste super

dernier petit truc :

la ligne "Cdes enregistrées le 12/12/2011", je la remplie manuellement

Ainsi, est-il possible que dans le sous total, il ajoute la somme que je veux inscrire automatiquement ?

Enfete ce fichier me sert pour remplir le fichier en pièce jointe de recap de suivi

Une fois que me sous totaux sont fait dans le fichier qu'on viens de travailler je rempli manuellement le fichier de suivi

Le total de la zone export hors Espagne et Uk : je le copie dans la case B6

le total de la celule 'SDD_OO_CM pour l'export : B8

le total de la zone espagne : B16 + total de la colonne 'SDD_OO_CM pour l'espagne : B19

Est-il envisageable de le remplir automatiquement

Merci encore pour ton aide précieuse

re,

On pourrait ajouter cette feuille au précédent fichier,

et la nommer "Suivi" par exemple

La macro mettrait à jour les "CA" en B6, B16 et B26

ainsi que les dates en A6, A16 et A26

c'est çà que tu veux ?

à te relire

Claude

Rechercher des sujets similaires à "extraire donnees fichier base qui change"