Créer une macro avec condition
Résolu
asmascetti
Messages postés
4
Statut
Membre
-
asmascetti Messages postés 4 Statut Membre -
asmascetti Messages postés 4 Statut Membre -
Bonjour,
je n'arrive pas à créer ma macro
débutante dans ce domaine
je cherche à déplacer les lignes complètes dont les tâches ont été effectué dans le tableau "tâches à effectuer"
on selection la ligne et en cliquant sur un bouton active exemple "ok" la ligne se déplace automatiquement dans le tableau "tâches effectuées"
EXEMPLES SIMPLES
tâches à effectuer
xxxxxxxxx 12/11/2012
bbbbbbbbbbbb 06/12/2012
aaaaaaaaaaaa 04/01/2013
tâches effectuées
ooooooooooo 06/10/2012
tttttttttttttttt 04/06/2012
Merci de votre aide
je n'arrive pas à créer ma macro
débutante dans ce domaine
je cherche à déplacer les lignes complètes dont les tâches ont été effectué dans le tableau "tâches à effectuer"
on selection la ligne et en cliquant sur un bouton active exemple "ok" la ligne se déplace automatiquement dans le tableau "tâches effectuées"
EXEMPLES SIMPLES
tâches à effectuer
xxxxxxxxx 12/11/2012
bbbbbbbbbbbb 06/12/2012
aaaaaaaaaaaa 04/01/2013
tâches effectuées
ooooooooooo 06/10/2012
tttttttttttttttt 04/06/2012
Merci de votre aide
A voir également:
- Créer une macro avec condition
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer une adresse hotmail - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Créer un lien pour partager des photos - Guide
4 réponses
Bonjour
Tes 2 tableaux sont ils sur la même feuille ?
quelle sont les colonnes utilisées par tes tableaux ?
au besoin
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
Tes 2 tableaux sont ils sur la même feuille ?
quelle sont les colonnes utilisées par tes tableaux ?
au besoin
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
Re, comme ta boutique refuse l'accès à cjoint , je ne peux pas t'envoyer ma maquette ! :o(
Donc:
1 a macro ci dessous vérifie que la ligne sélectionnée est bien dans le tableau "à effectuer"
2 elle mémorise les colonnes A à E de la ligne et supprime la ligne
3 les données sont inscrites à la fin du tableau "effectué"
edit 14:45 simplifié la macro
Michel
Donc:
1 a macro ci dessous vérifie que la ligne sélectionnée est bien dans le tableau "à effectuer"
2 elle mémorise les colonnes A à E de la ligne et supprime la ligne
3 les données sont inscrites à la fin du tableau "effectué"
Sub transférer_w_effectué()
lig_w = ActiveCell.Row
derlig = Columns("A").Find("", Range("A2")).Row - 1
'détecion ligne en dehors du tableau "à réaliser"
If derlig < lig_w Then GoTo erreur
'mémorise la ligne à transfèrer
w_fini = Range(Cells(lig_w, "A"), Cells(lig_w, "E")).Value
' supprime cette ligne ligne
Rows(lig_w).Delete
ligvid = Columns("A").Find("*", , , , , xlPrevious).Row + 1
Range("A" & ligvid).Resize(1, 5) = w_fini
Exit Sub
erreur:
MsgBox "mauvaise sélection de ligne", vbCritical
End Sub
edit 14:45 simplifié la macro
Michel
je sais que cela n'est pas la procédure mais avez vous un mail auquel je peux vous envoyer le dossier
la macro ne marche pas
en attente de vous lire
merci
la macro ne marche pas
en attente de vous lire
merci
j'ai fait une maquette et ca fonctionnait suivant les spécifications que tu m'as donné
la maquette (à regarder peut-^tre à la maison)
https://www.cjoint.com/?3Kmpuk17dKE
ou por transmettre le dossier utilises la possibilité de message perso de CCM
la maquette (à regarder peut-^tre à la maison)
https://www.cjoint.com/?3Kmpuk17dKE
ou por transmettre le dossier utilises la possibilité de message perso de CCM
bonjour
Une proposition un peu différente de celle de michel (salut à toi)
Le tableau 1 des taches à effectuer reste "entier" ici en A3:E19, ce qui te permet de rajouter des tâches (à effectuer)
- à mettre dans le module de la feuille active
- la macro est à activer par un double clic sur une cellule de la ligne à transférer
bonne suite
Une proposition un peu différente de celle de michel (salut à toi)
Le tableau 1 des taches à effectuer reste "entier" ici en A3:E19, ce qui te permet de rajouter des tâches (à effectuer)
- à mettre dans le module de la feuille active
- la macro est à activer par un double clic sur une cellule de la ligne à transférer
Option Explicit
Const T1 = "A3:E19"
Const lideb1 = 3
Const lifin1 = 19
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim li1 As Long, plage1 As String
Dim lifin2 As Long
If Target.Value = "" Or Intersect(Target, Range(T1)) Is Nothing Then Exit Sub
' ligne à deplacer
li1 = Target.Row
plage1 = "A" & li1 & ":E" & li1
' 1° ligne vide tableau T2
lifin2 = Cells.Find("*", , , , xlByRows, xlPrevious).Row + 1
' copie li1 sur lifin2
Range(plage1).Copy Cells(lifin2, 1)
' remonter les lignes de T1
If li1 = lifin1 Then
plage1 = "A" & li1 & ":E" & li1
Range(plage1).ClearContents
Else
For li1 = li1 + 1 To lifin1
plage1 = "A" & li1 & ":E" & li1
Range(plage1).Copy Cells(li1 - 1, 1)
Range(plage1).ClearContents
Next li1
End If
End Sub
bonne suite
désolé je ne peux vous joindre mon dossier
5 colonnes : A - B - C - D - E
A (numéro des taches)
B (désignation)
C (importance)
D (date a effectuer)
E nom du technicien
18 lignes qui concernent les taches à effectuées
et 6 lignes qui concernent les taches déjà éffectuées
soit à ta question
" Tes 2 tableaux sont ils sur la même feuille ? " = OUI
j'espere vous avoir aidé dans ma réponse
en vous remerciant d'avance de votre aide