Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2021 Ligne de code que je n'arrive pas à faire correctement

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous

Je n'arrive pas, coder correctement cette ligne :
ActiveCell.Offset(0, 4) = Sheets("truc").Range(ActiveCell.Offset(0, 1)).Value
Contexte
Je suis sur la feuille "Machin" active
je voudrais coller la valeur de la cellule active de la feuille "truc" NON active
ça beug :

Pourriez-vous m'aider svp ?
Merci à vous,
 
Solution
OK, le code du post #3 modifié :
VB:
Dim ac As Range
Set ac = ActiveCell
Application.ScreenUpdating = False
Sheets("truc").Activate
ActiveCell.Offset(0, 4) = ac.Offset(0, 1).Value
Application.Goto ac 'retour

dysorthographie

XLDnaute Accro
Bonjour,
En suivant le même raisonnement que sur ce lien


Tu poses toujours des questions sur tel ou tel action, alors que tu pourrais poser la question du comment faire un truc genre ?

Si tu avais posé cette question avant l'autre tu aurais gagné du temps !
 
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour Lionel, dysort,

Il faut aller sur la feuille "truc" pour savoir quelle est sa cellule active :
VB:
Dim ac As Range
Set ac = ActiveCell
Application.ScreenUpdating = False
Sheets("truc").Activate
ac.Offset(0, 4) = ActiveCell.Offset(0, 1).Value
Application.Goto ac 'retour
Si nécessaire tu peux ajouter des Application.EnableEvents = False/True.

A+
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour gérard
Merci pour ton code,
je vais voir avec mon fichier de travail...
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour gérard
Merci pour ton code,
je vais voir avec mon fichier de travail...
Re-Bjr
J'ai mis le code de Gérard dans mon fichier test
lol Au clic sur "F6" feuille machin, ça devrait coller en feuille "truc" mais ça ne colle rien du tout snifff .
Je joins le fichier.
J'ai encore du faire un bêtise lol
Je continue à chercher...
 

Pièces jointes

  • test.xlsm
    24.9 KB · Affichages: 3

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re Gérard
Je crois que c'est tout bon
VB:
Private Sub Worksheet_SelectionChange(ByVal R As Range)
If Not Intersect(R, Range("f6")) Is Nothing Then
Dim ac As Range
Set ac = ActiveCell
Application.ScreenUpdating = False
Sheets("truc").Activate
ActiveCell.Offset(0, 4) = ac.Offset(0, 1).Value
Application.Goto ac 'retour
Application.ScreenUpdating = True
End If
End Sub
voire fichier joint
 

Pièces jointes

  • test.xlsm
    25.6 KB · Affichages: 0

job75

XLDnaute Barbatruc
OK, le code du post #3 modifié :
VB:
Dim ac As Range
Set ac = ActiveCell
Application.ScreenUpdating = False
Sheets("truc").Activate
ActiveCell.Offset(0, 4) = ac.Offset(0, 1).Value
Application.Goto ac 'retour
 

Discussions similaires

  • Question
Microsoft 365 Code VBA
Réponses
2
Affichages
330
Réponses
17
Affichages
745
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…