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
 

Discussions similaires

Réponses
5
Affichages
353
Réponses
2
Affichages
348
Réponses
4
Affichages
451

Statistiques des forums

Discussions
315 098
Messages
2 116 190
Membres
112 679
dernier inscrit
Yupanki