Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres Bonjour svp je cherche code vba pour alimenter une feuille

samoooo

XLDnaute Nouveau
Bonjour
j ai un doc xls composer de deux feuille une pour données et l autre pour étude je cherche un code vba pour alimenter ma feuille étude a partir de la feuille donné.
j ai copier les données manuellement pour bien comprendre mon besoin
je rejoint mon doc on question et merci beaucoup
 

Pièces jointes

  • doc.xlsx
    13.7 KB · Affichages: 8

samoooo

XLDnaute Nouveau
Merci Phil69970
pour votre réponse mal compris ce que je veux la feuille étude qui reçoive les données a partir de la feuille donnée ses données copier de un autre classeur je suis obliger de copier la formule
je poste un code le vba a modifier Dans doc
 

Pièces jointes

  • TestV1.xlsm
    22.4 KB · Affichages: 3
Dernière édition:

Phil69970

XLDnaute Barbatruc
Re

pour votre réponse mal compris ce que je veux la feuille étude qui reçoive les données a partir de la feuille donnée ses données copier de un autre classeur je suis obliger de copier la formule
je poste un code le vba a modifier
J'ai rien compris de la réponse (et apparemment de la question) , je pense ne pas être le seul puisqu'il n'y a pas plus de réponse.
*Explication à revoir ....

@Phil69970
 

samoooo

XLDnaute Nouveau
merci Phil69970 quand même
voila mon code vba quelqu’un peux corriger



VB:
Option Explicit

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    Dim i As Integer, j As Integer, Ligne_NAM As Byte, Tableau_Split

    If ActiveSheet.Name <> "DONNE" Then
        With Sheets("DONNE")
            On Error Resume Next
            Ligne_NAM = Application.WorksheetFunction.Match(ActiveSheet.Range("A10"), .Range("C:C"), 0)
            If Ligne_NAM = 0 Then
                
                Exit Sub
            Else
                Application.ScreenUpdating = False
                ActiveSheet.Range("B13:B28").ClearContents
                For i = Ligne_NAM + 1 To 1000
                    If Left(.Range("C" & i), 1) <> "C" Then Exit For

                    Dim Position_DeuxPoints As Byte, Droite_Chaine As String, Compteur As Byte
                    Compteur = Compteur + 1
                    Position_DeuxPoints = WorksheetFunction.Search("", .Range("C" & i))
                    Droite_Chaine = "999 " & Right(.Range("C" & i), Len(.Range("C" & i)) - Position_DeuxPoints) ' 999 rajouté car - pour une raison inconnue - le premier élément n'est pas pris compte.
                    Tableau_Split = Split(Droite_Chaine)

                    For j = 1 To 1000 'Afin d'être sûr de couvrir tous les cas possibles, mais dès que l'élément du tableau i est vide, ça crée une erreur et ça passe plus loin
                        ActiveSheet.Cells(Compteur + 12, j + 1) = Tableau_Split(j)
                    Next j

                Next i
            End If
        End With
    End If
    Range("C21:C51").Select
    Selection.Replace What:=".", Replacement:=" ", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Selection.Replace What:="/", Replacement:=" ", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Selection.Replace What:="-", Replacement:=" ", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    ActiveWindow.ScrollRow = 6
    ActiveWindow.ScrollRow = 1
 
    

End Sub
 

Phil69970

XLDnaute Barbatruc
Re

@samoooo

Et la lumière fut .....
Fait à ma manière qui devrait correspondre à ta demande initial....

*Dans ton exemple tu as un 9eme et un 10eme cheval ==> --- LES MEILLEURS PALMARES ---

*Merci de ton retour

@Phil69970
 

Pièces jointes

  • Test1 V2.xlsm
    27.9 KB · Affichages: 4
Dernière édition:

Discussions similaires

Réponses
5
Affichages
353
Réponses
2
Affichages
348
Réponses
4
Affichages
453
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…