XL 2010 recherche et modification plage de données vba

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

chakershaker

XLDnaute Junior
Bonjour forum, je cherche une méthode pour modifier une plage de données contenue dans feuil1 par bouton modifier contenue dans feuil2 .
l'ajout se fait selon le filtre date dans la cellule f3 (donc il faut chercher la plage de données correspond à la date sélectionnée puis la modifier)

Merci d'avance.
 

Pièces jointes

Solution
Bonjour chakershaker,

D'après ce que je comprends :
VB:
Private Sub CommandButton1_Click()
Dim dat, tablo, i&
dat = [F3]
With Sheets("Feuil1")
    tablo = .Range("A1", .UsedRange).Resize(, 6) 'matrice, plus rapide
    For i = 1 To UBound(tablo) - 2
        If tablo(i, 6) = dat And tablo(i + 2, 1) = "Mois" Then Exit For
    Next
    If i = UBound(tablo) - 1 Then MsgBox "Date non trouvée !", 48: Exit Sub
    .Cells(i + 2, 1).CurrentRegion.EntireRow.Delete 'RAZ
    .Rows(i + 2).Resize([A5].CurrentRegion.Rows.Count).Insert 'insère des lignes vides
    [A5].CurrentRegion.EntireRow.Copy .Rows(i + 2) 'copier-coller
    .Visible = xlSheetVisible 'au cas où...
    Application.Goto .Cells(i, 1), True 'cadrage
    .Cells(i, 6).Select
End With
End...
Bonjour chakershaker,

D'après ce que je comprends :
VB:
Private Sub CommandButton1_Click()
Dim dat, tablo, i&
dat = [F3]
With Sheets("Feuil1")
    tablo = .Range("A1", .UsedRange).Resize(, 6) 'matrice, plus rapide
    For i = 1 To UBound(tablo) - 2
        If tablo(i, 6) = dat And tablo(i + 2, 1) = "Mois" Then Exit For
    Next
    If i = UBound(tablo) - 1 Then MsgBox "Date non trouvée !", 48: Exit Sub
    .Cells(i + 2, 1).CurrentRegion.EntireRow.Delete 'RAZ
    .Rows(i + 2).Resize([A5].CurrentRegion.Rows.Count).Insert 'insère des lignes vides
    [A5].CurrentRegion.EntireRow.Copy .Rows(i + 2) 'copier-coller
    .Visible = xlSheetVisible 'au cas où...
    Application.Goto .Cells(i, 1), True 'cadrage
    .Cells(i, 6).Select
End With
End Sub
A+
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
151
Retour