transfert de données d'une feuille à une autre grace à case à cocher

g.terro

XLDnaute Nouveau
Bonjour,

Je voudrai utiliser le fichier joint déjà amélioré en 2008 par Job75, BERRACHED etc.:)
Comment éviter que le double clique soit pris en compte si une des cellules n'a pas de donnée.
En effet C4 et D4 sont vides et pourtant le double clique sur F4 est pris en compte


Merci à tous pour votre réponse
 

Pièces jointes

  • Samanthie DoubleClick(2).xls
    33.5 KB · Affichages: 102

kjin

XLDnaute Barbatruc
Re : transfert de données d'une feuille à une autre grace à case à cocher

Bonjour,
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 6 Or Target.Row < 2 Then Exit Sub
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
End Sub

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column <> 6 Or Target.Row < 2 Or Target = "X" Then Exit Sub
If Application.CountA(Range("A" & Target.Row & ":E" & Target.Row)) < 5 Then Exit Sub
Cancel = True
Application.EnableEvents = False
Target = "X"
Application.EnableEvents = True
With Sheets("AA")
    dl = .Range("A65000").End(xlUp).Row + 1
    .Cells(dl, 1) = Target.Offset(, -5)
    .Cells(dl, 2) = Target.Offset(, -4)
    .Cells(dl, 3) = Target.Offset(, -2)
    .Cells(dl, 4) = VBA.Now
End With
End Sub
Edit: attention aux caractères [espace] dans tes cellules !
A+
kjin
 

Pièces jointes

  • gterro.xls
    26 KB · Affichages: 82
Dernière édition:

nyko283

XLDnaute Occasionnel
Re : transfert de données d'une feuille à une autre grace à case à cocher

Bonjour g.tero, le forum

Apres le 1er test tu rajoute ceci :

For i = 1 To 5 ' va tester les colonnes A jusqu a E
If Cells(cel.Row, i).Value = "" Then Exit Sub
Next i
attention les cellules doivent etre vide et pas contenir un espace sinon rajouter un espace entre les guillemets.
 

g.terro

XLDnaute Nouveau
Re : transfert de données d'une feuille à une autre grace à case à cocher

kjin,:)

Merci pour ta réponse et pour le forum, ce pas exactement ce que je recherche:rolleyes:
As tu STP double cliqué sur la cellule F3. Il devrait y avoir le X qui disparait ou apparait et la ligne qui change de couleur en fonction du X ou pas.:cool:
j'essaie de comprendre le code de ton fichier.:confused:
Comme je ne suis pas un chef dans la programmation je vais avoir du mal à "l'intégrer" dans mon code "Samanthie double click(2)"
En fait dans ton fichier je perd toutes les fonctionnalité de départ.
Merci et à +
Guillaume



Ca va être dur de m'y retrouver
 

g.terro

XLDnaute Nouveau
Re : transfert de données d'une feuille à une autre grace à case à cocher

niko283,

Désolé cela ne donne rien:(

si la ligne est incomplète voire vide, je peux toujours double cliquer en colonne F et avoir le X et colorer ma ligne (et ca je ne le veux pas).
Je voudrais que toute action en colonne F ne soit possible que si toute la ligne est complète

Merci:cool:
 

nyko283

XLDnaute Occasionnel
Re : transfert de données d'une feuille à une autre grace à case à cocher

Regarde dans ce fichier, car chez moi ca marche bien, en revanche dans le fichier que tu as déposer les cellules C4 et D4 ne sont pas vides, elles ont un espace a l'interieur d'ou n'autre mise en garde de Kjin et moi même,
et donc pour mon code les cellules ne sont pas vide.

donc dans mon fichier j'ai juste effacé les espaces dans les 2 cellules.
 

Pièces jointes

  • Samanthie%20DoubleClick%282%29(1).xls
    34 KB · Affichages: 118

nyko283

XLDnaute Occasionnel
Re : transfert de données d'une feuille à une autre grace à case à cocher

Bonjour Kjin,

Je vient de reprendre mon fichier, et pour moi si l'une des cellules de la ligne ou l'on double clic alors aucun traitement, mais si on double clic et la ligne est pleine alors la ligne est validé et transferer.

et d'apres mes essai il fait bien cela, apres j'ai peut etre loupé quelque chose, ce qui et fort possible.

Bonne Journée ensoleillé a tous.
 

g.terro

XLDnaute Nouveau
Re : transfert de données d'une feuille à une autre grace à case à cocher

niko283 et kjin,

Désolé,

Un remerciement avant tout car vous êtes efficaces et disponibles;).
Je n'avais pas "percuté sur la première suggestion de kjin
Veuillez acceptez mes 1000 excuses.

Ca fonctionne avec le dernier fichier de niko283... :confused:mais on n'est pas encore à la fin me semble t'il.
En effet, lorsque je double clique sur la colonne F (pour une ligne non complète) le curseur se met à clignoter et la seule façon de sortir de la cellule c'est de faire "échap".
Ne pourrais t'on pas éviter de rentrer dans la cellule (lorsque l'on y double clique dessus) afin d'éviter de devoir en sortir avec "Echap"
Merci pour vos réponses et votre code.


Une explication de Kjin , Désolé, c'est que ton fichier et son code ne tenais pas compte de mon fichier initial, je ne savais pas comment l'intégrer dans mon fichier.
Je suis nul en prog.

Merci:) Kjin
 

kjin

XLDnaute Barbatruc
Re : transfert de données d'une feuille à une autre grace à case à cocher

Re,
Une explication de Kjin , Désolé, c'est que ton fichier et son code ne tenais pas compte de mon fichier initial, je ne savais pas comment l'intégrer dans mon fichier.
J'aurais préféré Pour au lieu de car comme je réitère je ne comprends pas la logique de ton fichier.Maintenant, s'il s'agit de mettre la couleur, c'est pas compliqué
A+
kjin
 

g.terro

XLDnaute Nouveau
Re : transfert de données d'une feuille à une autre grace à case à cocher

Re,

J'aurais préféré Pour au lieu de

Oui vous avez raison je me suis mélangé les pinceaux, c'était bien Pour qu'il fallait que je note. Désolé

Re,

je réitère je ne comprends pas la logique de ton fichier.Maintenant, s'il s'agit de mettre la couleur, c'est pas compliqué

Une information pour Kjin::confused:
La mise en couleur c'est pour la facilité de lecture
Pour information le fichier en ongle BASE propose des lignes
En fonction de la sélection du double cliqué en colonne F, les lignes sont sélectionnées (colorées pour faciliter la lecture) puis copiées dans l'onglet AA.
Si par erreur la ligne n'est pas complète je ne souhaite pas qu'elle puisse être sélectionnée par un double cliqué.

De même si l'on re-double clique sur une cellule de la colonne F (dont la ligne est complète) on retire cette ligne de l'onglet AA.
Merci encore pour votre aide.
 

nyko283

XLDnaute Occasionnel
Re : transfert de données d'une feuille à une autre grace à case à cocher

alors pour eviter de "rentrer dans la cellule, modifie le code en ajoutant "Cancel=True "
de cette facon :

If Cells(cel.Row, i).Value = "" Then
Cancel = True
Exit Sub
 

g.terro

XLDnaute Nouveau
Re : transfert de données d'une feuille à une autre grace à case à cocher

niko283

alors pour eviter de "rentrer dans la cellule, modifie le code en ajoutant "Cancel=True "
de cette facon :

If Cells(cel.Row, i).Value = "" Then
Cancel = True
Exit Sub

Merci niko283

j'avais comme partie du code:

Private Sub Worksheet_BeforeDoubleClick(ByVal cel As Range, Cancel As Boolean)
If Intersect(cel, [F2:F65536]) Is Nothing Then Exit Sub
For i = 1 To 5 ' va tester les colonnes A jusqu a E
If Cells(cel.Row, i).Value = "" Then Exit Sub
Next i
Cancel = True
Application.EnableEvents = False 'évite le lancement de la macro Change



j'ai modifié comme demandé à savoir:
Private Sub Worksheet_BeforeDoubleClick(ByVal cel As Range, Cancel As Boolean)
If Intersect(cel, [F2:F65536]) Is Nothing Then Exit Sub
For i = 1 To 5 ' va tester les colonnes A jusqu a E
If Cells(cel.Row, i).Value = "" Then
Cancel = True
Exit Sub
Next i
Cancel = True
Application.EnableEvents = False 'évite le lancement de la macro Change

j'ai un message d'erreur de compilation NEXT sans FOR
Merci
 

Discussions similaires

Statistiques des forums

Discussions
312 534
Messages
2 089 383
Membres
104 152
dernier inscrit
sabalex