Collage Spéciale Valeur ActiveCell

Bonjour à tous,

Comme je suis débutante en programmation VBA, j'éprouve quelques difficultés à effectuer des commandes pourtant simples...

Donc voici mon problème:

Je dois copier la valeur d'une cellule active dans la colonne voisine mais sur la même ligne.

Autrement dit, dans la ColonneA se retrouve le résultat d'une formule : 00132_11_040_000C_D1_V1_20110411_1052.

La section suivante: 20110411_1052 doit être mise-à-jour avant de copier la valeur. Bon, ça c'est simple, je n'ai qu'a inscrire la foncion Calculate dans mon code...

Par la suite, je dois prendre la copier\coller la valeur de ma cellule dans une nouvelle colonne.

Soit: la valeur de ma Cellule A2 doit se copier dans la Cellule B2; la valeur de ma Cellule A3 doit se copier dans la Cellule B3;la valeur de ma Cellule A4 doit se copier dans la Cellule B4, etc.

Toute fois, cela doit être fait uniquement pour la cellule active!

Pour résumer, lorsque j'active ma macro, je veux que la valeur de la cellule active soit copiée dans la cellule voisine.

Merci de m'aider à débrouiller tout ça!

Bonjour,

ActiveCell.Offset(0, 1) = ActiveCell

Amicalement

Claude

Efficace!

Merci pour la rapidité de la réponse. J'essaie ça et je vous reviens...

Bonjour

Sans fichier difficile de savoir ce que tu veux exactement

A mettre dans le code la feuille

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Target.Count > 1 Then Exit Sub
  If Target.Column = 1 Then Target.Offset(0, 1) = Target
End Sub

Edit : Bonjour Dubois (Claude)

Dim Ligne As Integer

Calculate

ActiveCell.Offset(0, 1) = ActiveCell

Selection.Copy

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks_:=False, Transpose:=False

End Sub

Est-ce que ça a du sens?

-- 11 Avr 2011, 09:14 --

Colonne A vers Colonne B pour la cellule sélectionnée.

merci

-- 11 Avr 2011, 09:15 --

-- 11 Avr 2011, 09:18 --

Banzai64 a écrit :

Bonjour

Sans fichier difficile de savoir ce que tu veux exactement 'Comment faire pour joindre le fichier...j'essaie mais on dirait qu'il ne se passe rien...

A mettre dans le code la feuille

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Target.Count > 1 Then Exit Sub
  If Target.Column = 1 Then Target.Offset(0, 1) = Target
End Sub

Edit : Bonjour Dubois (Claude)

re,

joindrefichier

C'est ce que je fais pourtant...

-- 11 Avr 2011, 09:26 --

MellyMello a écrit :

C'est ce que je fais pourtant...

et ça n'a pas l'air de fonctionner...

-- 11 Avr 2011, 09:30 --

test

re,

Tu n'as droit qu'à des fichiers de 110 Ko maxi,

si plus gros, compresse ton fichier ou allège-le

Claude

édit: vu ta photo, cette ligne devrait suffire

ActiveCell.Offset(0, 1) = ActiveCell

Fait voir la macro complète

merci

-- 11 Avr 2011, 09:43 --

MellyMello a écrit :

merci

Le second Selection Copy est une erreur...je l'ai enlevé...

macro

re,

Sub CopieNom()
    Calculate
    ActiveCell.Offset(0, 1) = ActiveCell
End Sub

le "Calculate" ne sert que si tu es en calcul manuel

Claude

J'utilise le Calculate parce que la valeur date et heure de la colonne A provienne d'une autre cellule dont la formule est: =MAINTENANT().

C'est parce que je veux retrouver la date et l'heure au moment de la création dans le nom de mon clip...

-- 11 Avr 2011, 09:51 --

WoW! Merci beaucoup ça fonctionne mieux que dans mes rêves!

Pourquoi faire compliqué quand ça peut être simple et vice versa!

pour être complet,

Bon...alors, tout fonctionne bien lorsque je sélectionne une seule cellule. Toutefois, que faire si l'utilisateur sélectionne plusieurs cellules? il faudrait que le programme ne fasse rien... De plus, j'aimerais ajouter une sortie en douceur si la macro bug.

-- 11 Avr 2011, 10:25 --

dubois a écrit :

pour être complet,

En fait...on y est presque...

Bon...alors, tout fonctionne bien lorsque je sélectionne une seule cellule. Toutefois, que faire si l'utilisateur sélectionne plusieurs cellules? il faudrait que le programme ne fasse rien... De plus, j'aimerais ajouter une sortie en douceur si la macro bug.

re,

essaye avec un double-clic sur la cellule

code à placer dans le VBE de la feuille (et non un module)

ici, plus besoin de bouton

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Count > 1 Then Exit Sub
    If Target.Column = 1 Then Target.Offset(0, 1) = Target
    Target.Offset(0, 1).Activate
End Sub

Salut Banzai64

Amicalement

Claude

Rechercher des sujets similaires à "collage speciale valeur activecell"