Mise à jour de données sur plusieurs feuilles

Bonjour à tous,

Débutant VBA, j'aurais besoin d'aide svp

Je recherche depuis plusieurs heures, si je suis passé à côté veuillez m'en excuser et si vous pouviez m'indiquer un lien svp ce serait fort appréciable

J'utilise une macro que j'ai trouvée, qui extrait les données d'une feuille selon critère en colonne et crée les feuilles correspondantes.

Seulement, j'aimerais extraire les nouvelles données en feuil 1 et les coller sur les feuilles correspondantes (ES,FR), ainsi je pourrais modifier les anciennes données des feuilles (ES,FR).

Ci-joint le code actuel

Dim i&, F As Worksheet, TMP, Deb!
Deb = Timer
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.StatusBar = ""
With Sheets("Feuil1")
    'Pour les lignes de 2 à la dernière remplie en colonne 9
    For i = 2 To .Cells(Rows.Count, 2).End(xlUp).Row
        TMP = .Cells(i, 2).Value
        'Si il y a une erreure on passe à la ligne suivante
        On Error Resume Next
        'On dis que F est égal à la feuille du nom de la valeur de la cellule i en colonne 9
        'si cette feuille n'existe pas il y a une erreur gérée par la ligne précédente
        Set F = Sheets(TMP)
        'si il y a une erreur on l'annule
        On Error GoTo 0
        ''si f n'est rien, donc si la feuille n'existe pas
        If F Is Nothing Then
            'on la crée au bout des onglets
            Sheets.Add(after:=Sheets(Sheets.Count)).Name = TMP
            'On ajoute l'en tête
            ActiveSheet.Rows(1).Value = .Rows(1).Value
            'On dis que F est égal à la feuille du nom de la valeur de la cellule i en colonne 9
            Set F = Sheets(TMP)
        'Fin de la codition
        End If
        'Comme on est certain de l'éxistence de la feuille
        'on copie la ligne i de la feuille Import sur la première ligne vide en colonne 1(A)de la bonne feuille
        F.Rows(F.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row).Value = .Rows(i).Value
        'On annule la variable F (préparation du prochain passage)
        Set F = Nothing
    Next i
    .Activate 'Retour sur la feuille Import
End With
Application.StatusBar = False
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
MsgBox Timer - Deb

Merci d'avance

Fichier exemple :

18extraction.zip (12.70 Ko)

Bonsoir,

Est-ce cela qu'il te faut ?

Sub Test()
    Dim i&, k%, F As Worksheet
    Worksheets("FR").Range("A1").CurrentRegion.Offset(1).ClearContents
    Worksheets("ES").Range("A1").CurrentRegion.Offset(1).ClearContents
    With Sheets("Feuil1")
        k = .Cells(1, Columns.Count).End(xlToLeft).Column
        For i = 2 To .Cells(Rows.Count, 2).End(xlUp).Row
            Set F = Worksheets(.Cells(i, 2).Value)
            If Not F Is Nothing Then F.Range("A" & Rows.Count).End(xlUp)(2).Resize(, k).Value _
             = .Cells(i, 1).Resize(, k).Value
        Next i
    End With
End Sub

bonjour

salut MFerrand

sans VBA, sans formule, à la portée d'un débutant : avec un TCD

en xlsx on peut faire une présentation plus jolie

Merci beaucoup

Mais malheureusement ce n'est pas ce que je recherche.

Il faudrait que les données déjà copiées dans (es, fr) ne sois pas recopié pour pouvoir les modifier manuellement en sachant que la feuille 1 contient les anciennes et nouvelle données chaque jour.

Je me demande donc si un code pourrait compter le nombre de lignes pour un critère exemple sur feuille (es) et compter le nombre de lignes du du même critère dans la feuille 1 et ainsi copier les lignes supplémentaires dans la feuille (es), (le classeur contient plus de 70 feuilles)

Je pense que m'a demandé est trop compliqué, si elle l'est dite le moi

Dsl de ne pas avoir donné suite plus rapidement

Je vais chercher des pistes et essayer de faire un exemple

Cordialement

re

c'est exactement ce que fait un TCD

il faut juste faire clic droit dans le TCD et choisir "Actualiser"

as-tu quelques connaissances en TCD ?

Bonjour,

Il suffit que tu parviennes à faire comprendre ce que tu souhaites ! Et à toi comprendre ce que l'on te propose !

Exemple : tu proposes un modèle où toutes les lignes de chaque feuille sont aussi dans Feuil1... Je propose donc de tout effacer pour reprendre la répartition à partir de Feuil1. Si cela ne colle pas, c'est qu'il manque des infos non fournies de ta part...

Si on ne doit s'occuper que des nouveaux sur Feuil1, il faut un critères distinguant les nouveaux !

Cordialement.

MFerrand a écrit :

Si on ne doit s'occuper que des nouveaux sur Feuil1, il faut un critères distinguant les nouveaux !

Cordialement.

salut MFerrand

heu... non, pas besoin de savoir si des infos ont été saisies récemment ou sont anciennes.

Rechercher des sujets similaires à "mise jour donnees feuilles"