Copies de cellule se feuille 2 dand feuille 1 dans cellule quitée de feuille 1

ergastule

XLDnaute Nouveau
Bonjour à tous

Je cherche à copier la valeur d'une cellule dans une cellule d'une autre feuille quittée précédemment.

J'ai déjà écrit ce qui suit, mais la macro 5 ne fonctionne pas
Sub Macro1()
'
' Macro1 Macro
'' Aller à liste des taches
'

'
x = ActiveSheet.Name
y = Selection.Address

'pour vérif avant ==>

MsgBox ("feuille (" & x & ") cellule (" & y & " )")
'
Sheets("Liste des tâches").Select
Range("A2").Select
End Sub

Sub Macro5()
If feuille = "" Then Exit Sub
With Application
.ScreenUpdating = 0
Range("A4").Copy
Sheets(feuille).Range(cellule).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
.CutCopyMode = False
.ScreenUpdating = 1
End With
Sheets(feuille).Select

End Sub
 

Dranreb

XLDnaute Barbatruc
Re : Copies de cellule se feuille 2 dand feuille 1 dans cellule quitée de feuille 1

Bonjour.
J'imagine que puisqu'elles ne sont pas déclarées dans la Sub Macro5, feuille et cellule sont des variables globales, déclarées donc en tête du module, juste derrière Option Explicit ?
Mais sont elles initialisées quelque part ?
Remarquez, vous auriez meilleurs temps de noter ça plutôt par un Set dans une seule variable globale déclarée As Range.
 

ergastule

XLDnaute Nouveau
Re : Copies de cellule se feuille 2 dand feuille 1 dans cellule quitée de feuille 1

Bonjour

merci de vos réponse

J'ai initialisé avec l'instruction suivante, l'ensemble fonctionnant dans une autre application mais en recopiant ces instructions dans ma nouvelle application cela ne fonctionne pas

Private Sub Workbook_SheetDeactivate(ByVal Fl As Object)
Dim af As Worksheet
Set af = ActiveSheet
With Application: .EnableEvents = 0: .ScreenUpdating = 0: End With
Fl.Activate
feuille = ActiveSheet.Name
cellule = ActiveCell.Address
af.Activate
With Application: .ScreenUpdating = 0: .EnableEvents = 1: End With
End Sub

Sinon comment puis je écrire l'instruction de retour avec un set

Merci d'avance

Cordialement
 

Dranreb

XLDnaute Barbatruc
Re : Copies de cellule se feuille 2 dand feuille 1 dans cellule quitée de feuille 1

En tête du module:
VB:
Option Explicit
Dim LaCellule As Range
Mais l'évènement Workbook_SheetDeactivate est trop tard pour noter la cellule. Il faut:
VB:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Set LaCellule = Target
End Sub

Mais je ne comprends pas trop ce que vous voulez faire.
À quoi bon garnir une cellule d'une feuille qu'on a quitté, puisqu'on ne le verra qu'en la réactivant ?
Ce serait donc plutôt en réactivant celle ci qu'il faudrait le faire, non ?
 
Dernière édition:

ergastule

XLDnaute Nouveau
Re : Copies de cellule se feuille 2 dand feuille 1 dans cellule quitée de feuille 1

En fait
je vais chercher une valeur résultant d'un filtre sur une autre feuille que je veux copier dans la cellule de la feuille que je viens de quitter, donc je connais la valeur que je veux copier
 

Pièces jointes

  • Recherche Cédric.xlsm
    45.5 KB · Affichages: 12

Dranreb

XLDnaute Barbatruc
Re : Copies de cellule se feuille 2 dand feuille 1 dans cellule quitée de feuille 1

Les procédures de prise en charge d'évènements ne sont opérationnelles que dans les modules objets.
Une Workbook_SheetSelectionChange par exemple ne peut donc marcher que dans le module ThisWorkbook, pas dans un module ordinaire.
 
Dernière édition:

ergastule

XLDnaute Nouveau
Re : Copies de cellule se feuille 2 dand feuille 1 dans cellule quitée de feuille 1

OK j'ai transféré

qu'elle serait l'instruction à placer dans ma macro5 pour demander de copier la valeur de la "cellule A4" de la feuille "Liste des taches" dans la cellule "Target"

Merci d'avance

Cordialement
 

Dranreb

XLDnaute Barbatruc
Re : Copies de cellule se feuille 2 dand feuille 1 dans cellule quitée de feuille 1

Écoutez … avant d'aller plus loin.
Ce que je vois dans la feuille "Liste des tâches" me donne à penser que vous êtes mal parti.
Ça me suggère plein de chose tel que 1) - seul ce qu'il y a à partir de la ligne 29 est intéressant, 2) - bizarrement, vous ne devriez pas allez dans cette feuille pour faire vos choix.
En restant toujours sur l'autre feuille (je ne sais d'ailleurs toujours pas quelle est elle ?), ça simplifierais, non ?
Vous avez un Userform, je vois. Mettez y des ComboBox (listes déroulantes modifiables) pour les Lot, Chapitre et Tâche.
On y sélectionnera ce qu'il faudra …

P.S. C'est marrant: s'il y avait, derrière les 3, une unité de volume, poids, surface ou pièce puis un prix unitaire, et dans l'Userform une TextBox pour saisir la quantité, ça permettrait d'établir des devis …
 
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 472
Messages
2 088 709
Membres
103 928
dernier inscrit
MIKETUAU