Archive

Bonjour

Je souhaiterais que dans ce dossier https://www.excel-pratique.com/~files/doc/action_utilities_V4.xls

Que dans la feuille plan il y est un bouton qui me permette d'archiver toute les actions noté faite (couleur verte) sur une autre page, mais je n'ai pas la moindre idée de comment faire.

Merci d'avance

Bonsoir,

Tu veux copier ou déplacer les lignes vertes dans une feuille "Archives" ?

amicalement

Claude.

Oui c'est parfaitement ce que je veux avec un bouton archive

re,

Copier ou déplacer ?

c'est pas pareil ! !

Claude.

Déplacer

commence par défusionner les cellules !

dubois a écrit :

commence par défusionner les cellules !

Deja un grand mot pour moi vraiment désolé mais je suis noob avec excel ça fait pas longtemps que j'essaye de le prendre en main

Salut le forum

Tu parles bien d'Excel car ton profile indique Open Office v2.4 ....

Mytå

Mytå a écrit :

Salut le forum

Tu parles bien d'Excel car ton profile indique Open Office v2.4 ....

Mytå

C'est a dire qu'au boulot j'utilise Excel mais chez mois c'est Office

re,

Ton fichier défusionné et adapté

https://www.excel-pratique.com/~files/doc/action_utilities5.xls

J'ai ajouté un onglet "origine" pour que tu puisse faire des tests

une cellule fusionnée, c'est une cellule qui regroupe plusieurs colonnes (la plaie des programmeurs)

amicalement

Claude.

Salut claude le dcdoc es en lecture seul je n'arrive pas a faire les test

Quand je click sur archive ca me le panneau vba s'ouvre et me marque

Syntaxe error basic symbole inattendu (.

Rem Attribute VBA_ModuleType=VBAModule
Option VBASupport 1
''Macros par Claude Dubois pour "Cedricmucha" Excel-Pratique le 27 Nov 08

Sub Archive()
Dim Nb As String
Dim i As Byte
    Application.ScreenUpdating = False
    Nb = Application.WorksheetFunction.CountA(Range([m3], [m65536].End(xlUp))) - 1
        If Nb = 0 Then Exit Sub
        Range("m4").Select
    For i = 1 To Nb
        If ActiveCell <> "" Then
            ActiveCell.EntireRow.Copy
                With Sheets("Archives")
                    .Range("A65536").End(xlUp)(2).PasteSpecial Paste:=xlPasteValues
                End With
            ActiveCell.EntireRow.Delete
            Application.CutCopyMode = False
        Else
            ActiveCell.Offset(1, 0).Select
            i = i - 1
        End If
    Next i
End Sub

salut le forum

Normal Cedricmucha

  • C'est a dire qu'au boulot j'utilise Excel mais chez mois c'est Office

Excel et Ooo pas compatible versus les macros.

Le pourquoi de ma demande

  • Tu parles bien d'Excel car ton profile indique Open Office v2.4 ....

Mytå

P.S. Sinon pas d'erreur ici sur le fichier

Sous Excel cela donne

''Macros par Claude Dubois pour "Cedricmucha" Excel-Pratique le 27 Nov 08

Sub Archive()
Dim Nb As String
Dim i As Byte
    Application.ScreenUpdating = False
    Nb = Application.WorksheetFunction.CountA(Range([m3], [m65536].End(xlUp))) - 1
        If Nb = 0 Then Exit Sub
        Range("m4").Select
    For i = 1 To Nb
        If ActiveCell <> "" Then
            ActiveCell.EntireRow.Copy
                With Sheets("Archives")
                    .Range("A65536").End(xlUp)(2).PasteSpecial Paste:=xlPasteValues
                End With
            ActiveCell.EntireRow.Delete
            Application.CutCopyMode = False
        Else
            ActiveCell.Offset(1, 0).Select
            i = i - 1
        End If
    Next i
End Sub

Sans le début

Rem Attribute VBA_ModuleType=VBAModule 
Option VBASupport 1

Teste demain au boulot

Mytå

ok merci alors j'essaierai au boulot

dubois a écrit :

re,

Ton fichier défusionné et adapté

https://www.excel-pratique.com/~files/doc/action_utilities5.xls

J'ai ajouté un onglet "origine" pour que tu puisse faire des tests

une cellule fusionnée, c'est une cellule qui regroupe plusieurs colonnes (la plaie des programmeurs)

amicalement

Claude.

Merci je viens de tester au boulot et ca fonctionne parfaitement. Pourrais tu m'en dire un peu plus sur la façon dont tu as proçédé j'aimerais savoir le fair seul car je voudrée crée un check box qui me permettre de remplir mon tableau (plan) grace à des cases cocher.

Merci beaucoup

Bonjour à tous,

La macro teste la colonne" M" (Réalisés) en partant de M4

- si la cellule est occupée, la ligne est copiée et collée/Valeur dans la feuille "Archive",

la ligne est supprimée de la feuille "Plan".

- si la cellule est vide, on passe à la ligne suivante

Cela en boucle (autant de fois qu'il y avait de cellules occupées col. M)= Nb

    Nb = Application.WorksheetFunction.CountA(Range([m3], [m65536].End(xlUp))) - 1

ce code compte les cellules occupées colonne M.

Bon dimanche

Claude.

Rechercher des sujets similaires à "archive"