selectionner dans une colonne une date puis récupérer certaine valeur ligne
2 réponses
jj40
Bonjour,
je souhaiterais dans un fichier excel qui contient une vingtaine de feuilles sélectionner la colonne de date atteindre la dernière date saisie puis sur la ligne sélectionnée copier certaines cellules de droite dans chaque feuille ex: B3 C3 F3 qui sont tous agencés de la même façon, sur la première feuille faire un récapitulatif ligne par ligne sélectionnée et par feuille de chaque valeur trouvées de telle façon qu' a chaque ouverture du fichier la mise à jour se fasse automatiquement.
pour le code j'ai quelque connaissances mais toutes petites lol
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
DanielCo
Bonjour,
Sub test2() Dim sh As Worksheet, c As Range, Ligne As Long With Sheets("Récap") Ligne = .Cells(.Cells.Rows.Count, 1).End(xlUp).Row For Each sh In Sheets If sh.Name <> "Récap" Then Ligne = Ligne + 1 .Cells(Ligne, 1) = sh.Name Set c = sh.Columns(1).Find("*", , , , xlByRows, xlPrevious) .Cells(Ligne, 2) = c.Value .Cells(Ligne, 3) = sh.Cells(c.Row, 2) .Cells(Ligne, 4) = sh.Cells(c.Row, 3) .Cells(Ligne, 5) = sh.Cells(c.Row, 6) End If Next sh End With End Sub
Cordialement. Daniel
Bonjour, je souhaiterais dans un fichier excel qui contient une vingtaine de feuilles sélectionner la colonne de date atteindre la dernière date saisie puis sur la ligne sélectionnée copier certaines cellules de droite dans chaque feuille ex: B3 C3 F3 qui sont tous agencés de la même façon, sur la première feuille faire un récapitulatif ligne par ligne sélectionnée et par feuille de chaque valeur trouvées de telle façon qu' a chaque ouverture du fichier la mise à jour se fasse automatiquement. pour le code j'ai quelque connaissances mais toutes petites lol
Sub test2()
Dim sh As Worksheet, c As Range, Ligne As Long
With Sheets("Récap")
Ligne = .Cells(.Cells.Rows.Count, 1).End(xlUp).Row
For Each sh In Sheets
If sh.Name <> "Récap" Then
Ligne = Ligne + 1
.Cells(Ligne, 1) = sh.Name
Set c = sh.Columns(1).Find("*", , , , xlByRows, xlPrevious)
.Cells(Ligne, 2) = c.Value
.Cells(Ligne, 3) = sh.Cells(c.Row, 2)
.Cells(Ligne, 4) = sh.Cells(c.Row, 3)
.Cells(Ligne, 5) = sh.Cells(c.Row, 6)
End If
Next sh
End With
End Sub
Cordialement.
Daniel
Bonjour,
je souhaiterais dans un fichier excel qui contient une vingtaine de feuilles
sélectionner la colonne de date atteindre la dernière date saisie puis sur
la ligne sélectionnée copier certaines cellules de droite dans chaque feuille
ex: B3 C3 F3 qui sont tous agencés de la même façon, sur la première feuille
faire un récapitulatif ligne par ligne sélectionnée et par feuille de chaque
valeur trouvées de telle façon qu' a chaque ouverture du fichier la mise à
jour se fasse automatiquement.
pour le code j'ai quelque connaissances mais toutes petites lol
Sub test2() Dim sh As Worksheet, c As Range, Ligne As Long With Sheets("Récap") Ligne = .Cells(.Cells.Rows.Count, 1).End(xlUp).Row For Each sh In Sheets If sh.Name <> "Récap" Then Ligne = Ligne + 1 .Cells(Ligne, 1) = sh.Name Set c = sh.Columns(1).Find("*", , , , xlByRows, xlPrevious) .Cells(Ligne, 2) = c.Value .Cells(Ligne, 3) = sh.Cells(c.Row, 2) .Cells(Ligne, 4) = sh.Cells(c.Row, 3) .Cells(Ligne, 5) = sh.Cells(c.Row, 6) End If Next sh End With End Sub
Cordialement. Daniel
Bonjour, je souhaiterais dans un fichier excel qui contient une vingtaine de feuilles sélectionner la colonne de date atteindre la dernière date saisie puis sur la ligne sélectionnée copier certaines cellules de droite dans chaque feuille ex: B3 C3 F3 qui sont tous agencés de la même façon, sur la première feuille faire un récapitulatif ligne par ligne sélectionnée et par feuille de chaque valeur trouvées de telle façon qu' a chaque ouverture du fichier la mise à jour se fasse automatiquement. pour le code j'ai quelque connaissances mais toutes petites lol
Sub test2() Dim sh As Worksheet, c As Range, Ligne As Long With Sheets("Récap") Ligne = .Cells(.Cells.Rows.Count, 1).End(xlUp).Row For Each sh In Sheets If sh.Name <> "Récap" Then Ligne = Ligne + 1 .Cells(Ligne, 1) = sh.Name Set c = sh.Columns(1).Find("*", , , , xlByRows, xlPrevious) .Cells(Ligne, 2) = c.Value .Cells(Ligne, 3) = sh.Cells(c.Row, 2) .Cells(Ligne, 4) = sh.Cells(c.Row, 3) .Cells(Ligne, 5) = sh.Cells(c.Row, 6) End If Next sh End With End Sub
Cordialement. Daniel
Bonjour, je souhaiterais dans un fichier excel qui contient une vingtaine de feuilles sélectionner la colonne de date atteindre la dernière date saisie puis sur la ligne sélectionnée copier certaines cellules de droite dans chaque feuille ex: B3 C3 F3 qui sont tous agencés de la même façon, sur la première feuille faire un récapitulatif ligne par ligne sélectionnée et par feuille de chaque valeur trouvées de telle façon qu' a chaque ouverture du fichier la mise à jour se fasse automatiquement. pour le code j'ai quelque connaissances mais toutes petites lol
Merci Daniel ça fonctionne parfaitement "total respect" bonne continuation sur le site à bientôt amicalement JJ
DanielCo a écrit le 21/09/2011 à 10h37 :
Bonjour,
Sub test2()
Dim sh As Worksheet, c As Range, Ligne As Long
With Sheets("Récap")
Ligne = .Cells(.Cells.Rows.Count, 1).End(xlUp).Row
For Each sh In Sheets
If sh.Name <> "Récap" Then
Ligne = Ligne + 1
.Cells(Ligne, 1) = sh.Name
Set c = sh.Columns(1).Find("*", , , , xlByRows, xlPrevious)
.Cells(Ligne, 2) = c.Value
.Cells(Ligne, 3) = sh.Cells(c.Row, 2)
.Cells(Ligne, 4) = sh.Cells(c.Row, 3)
.Cells(Ligne, 5) = sh.Cells(c.Row, 6)
End If
Next sh
End With
End Sub
Cordialement.
Daniel
Bonjour,
je souhaiterais dans un fichier excel qui contient une vingtaine de feuilles
sélectionner la colonne de date atteindre la dernière date
saisie puis sur
la ligne sélectionnée copier certaines cellules de droite dans
chaque feuille
ex: B3 C3 F3 qui sont tous agencés de la même façon, sur
la première feuille
faire un récapitulatif ligne par ligne sélectionnée et
par feuille de chaque
valeur trouvées de telle façon qu' a chaque ouverture du fichier
la mise à
jour se fasse automatiquement.
pour le code j'ai quelque connaissances mais toutes petites lol
Sub test2() Dim sh As Worksheet, c As Range, Ligne As Long With Sheets("Récap") Ligne = .Cells(.Cells.Rows.Count, 1).End(xlUp).Row For Each sh In Sheets If sh.Name <> "Récap" Then Ligne = Ligne + 1 .Cells(Ligne, 1) = sh.Name Set c = sh.Columns(1).Find("*", , , , xlByRows, xlPrevious) .Cells(Ligne, 2) = c.Value .Cells(Ligne, 3) = sh.Cells(c.Row, 2) .Cells(Ligne, 4) = sh.Cells(c.Row, 3) .Cells(Ligne, 5) = sh.Cells(c.Row, 6) End If Next sh End With End Sub
Cordialement. Daniel
Bonjour, je souhaiterais dans un fichier excel qui contient une vingtaine de feuilles sélectionner la colonne de date atteindre la dernière date saisie puis sur la ligne sélectionnée copier certaines cellules de droite dans chaque feuille ex: B3 C3 F3 qui sont tous agencés de la même façon, sur la première feuille faire un récapitulatif ligne par ligne sélectionnée et par feuille de chaque valeur trouvées de telle façon qu' a chaque ouverture du fichier la mise à jour se fasse automatiquement. pour le code j'ai quelque connaissances mais toutes petites lol