VBA : récupérer dans un tableau le contenu du presse papier ?
4 réponses
Alfred WALLACE
Bonjour,
j'ai cherch=E9 (mais surement comme un pieds) ce que l'on pouvait faire
entre le VBA et le presse papier, je n'ai trouver que des =E9l=E9ments qui
envoient des
donn=E9es "copi=E9es" dans le presse papier.
Moi, je cherche =E0 faire le contraire.
j'ai une liste de nom, les uns en dessous des autres. dans une
application X.
je les selectionne, et j'aimerai, par une macro vba (je pense)
r=E9cup=E9rer ces valeurs dans un tableau de type Variant
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour Alfred,
SubMacro1() Dim recip() Set plage = Sheets("Feuil1").Range("A2:A12") For i = 1 To plage.Count ReDim Preserve recip(i) recip(i) = plage(i) Next 'copie la liste de nom dans la feuille 2 Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) = Application.Transpose(recip) End Sub
isabelle
Alfred WALLACE a écrit :
Bonjour, j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire entre le VBA et le presse papier, je n'ai trouver que des éléments qui envoient des données "copiées" dans le presse papier.
Moi, je cherche à faire le contraire. j'ai une liste de nom, les uns en dessous des autres. dans une application X. je les selectionne, et j'aimerai, par une macro vba (je pense) récupérer ces valeurs dans un tableau de type Variant
ex : Dim recip(25) as Variant
Recip() = recup-clipboard
voila. merci encore pour vos informations.
José
bonjour Alfred,
SubMacro1()
Dim recip()
Set plage = Sheets("Feuil1").Range("A2:A12")
For i = 1 To plage.Count
ReDim Preserve recip(i)
recip(i) = plage(i)
Next
'copie la liste de nom dans la feuille 2
Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) =
Application.Transpose(recip)
End Sub
isabelle
Alfred WALLACE a écrit :
Bonjour,
j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire
entre le VBA et le presse papier, je n'ai trouver que des éléments qui
envoient des
données "copiées" dans le presse papier.
Moi, je cherche à faire le contraire.
j'ai une liste de nom, les uns en dessous des autres. dans une
application X.
je les selectionne, et j'aimerai, par une macro vba (je pense)
récupérer ces valeurs dans un tableau de type Variant
SubMacro1() Dim recip() Set plage = Sheets("Feuil1").Range("A2:A12") For i = 1 To plage.Count ReDim Preserve recip(i) recip(i) = plage(i) Next 'copie la liste de nom dans la feuille 2 Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) = Application.Transpose(recip) End Sub
isabelle
Alfred WALLACE a écrit :
Bonjour, j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire entre le VBA et le presse papier, je n'ai trouver que des éléments qui envoient des données "copiées" dans le presse papier.
Moi, je cherche à faire le contraire. j'ai une liste de nom, les uns en dessous des autres. dans une application X. je les selectionne, et j'aimerai, par une macro vba (je pense) récupérer ces valeurs dans un tableau de type Variant
ex : Dim recip(25) as Variant
Recip() = recup-clipboard
voila. merci encore pour vos informations.
José
Alfred WALLACE
Merci Isabelle, pour ton aide. cependant, je ne vois nulle part à quel endroit tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes. je selectionne les données (par exemple, une liste de noms) et je les colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier et le coller dans un tableau de type Variant déclaré comme suit : Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide. José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle wrote:
bonjour Alfred,
SubMacro1() Dim recip() Set plage = Sheets("Feuil1").Range("A2:A12") For i = 1 To plage.Count ReDim Preserve recip(i) recip(i) = plage(i) Next 'copie la liste de nom dans la feuille 2 Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) = Application.Transpose(recip) End Sub
isabelle
Alfred WALLACE a écrit :
> Bonjour, > j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire > entre le VBA et le presse papier, je n'ai trouver que des éléments qui > envoient des > données "copiées" dans le presse papier.
> Moi, je cherche à faire le contraire. > j'ai une liste de nom, les uns en dessous des autres. dans une > application X. > je les selectionne, et j'aimerai, par une macro vba (je pense) > récupérer ces valeurs dans un tableau de type Variant
> ex : > Dim recip(25) as Variant
> Recip() = recup-clipboard
> voila. > merci encore pour vos informations.
> José
Merci Isabelle, pour ton aide.
cependant, je ne vois nulle part à quel endroit
tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes.
je selectionne les données (par exemple, une liste de noms) et je les
colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier
et le coller dans un tableau de type Variant déclaré comme suit :
Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide.
José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle <i@v> wrote:
bonjour Alfred,
SubMacro1()
Dim recip()
Set plage = Sheets("Feuil1").Range("A2:A12")
For i = 1 To plage.Count
ReDim Preserve recip(i)
recip(i) = plage(i)
Next
'copie la liste de nom dans la feuille 2
Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) =
Application.Transpose(recip)
End Sub
isabelle
Alfred WALLACE a écrit :
> Bonjour,
> j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire
> entre le VBA et le presse papier, je n'ai trouver que des éléments qui
> envoient des
> données "copiées" dans le presse papier.
> Moi, je cherche à faire le contraire.
> j'ai une liste de nom, les uns en dessous des autres. dans une
> application X.
> je les selectionne, et j'aimerai, par une macro vba (je pense)
> récupérer ces valeurs dans un tableau de type Variant
Merci Isabelle, pour ton aide. cependant, je ne vois nulle part à quel endroit tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes. je selectionne les données (par exemple, une liste de noms) et je les colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier et le coller dans un tableau de type Variant déclaré comme suit : Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide. José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle wrote:
bonjour Alfred,
SubMacro1() Dim recip() Set plage = Sheets("Feuil1").Range("A2:A12") For i = 1 To plage.Count ReDim Preserve recip(i) recip(i) = plage(i) Next 'copie la liste de nom dans la feuille 2 Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) = Application.Transpose(recip) End Sub
isabelle
Alfred WALLACE a écrit :
> Bonjour, > j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire > entre le VBA et le presse papier, je n'ai trouver que des éléments qui > envoient des > données "copiées" dans le presse papier.
> Moi, je cherche à faire le contraire. > j'ai une liste de nom, les uns en dessous des autres. dans une > application X. > je les selectionne, et j'aimerai, par une macro vba (je pense) > récupérer ces valeurs dans un tableau de type Variant
> ex : > Dim recip(25) as Variant
> Recip() = recup-clipboard
> voila. > merci encore pour vos informations.
> José
LSteph
Bonjour,
Si l'on s'en tient à l'objectif que tu as indiqué:
j'ai une liste de nom, les uns en dessous des autres. dans une application X. je les selectionne, et j'aimerai, par une macro vba (je pense) récupérer ces valeurs dans un tableau de type Variant
il me semble que plus drectement la macro d'Isabelle t'indique comment faire et sans avoir à gérer le presse papier.
Cordialement
-- lSteph
On 15 oct, 11:27, Alfred WALLACE wrote:
Merci Isabelle, pour ton aide. cependant, je ne vois nulle part à quel endroit tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes. je selectionne les données (par exemple, une liste de noms) et je les colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier et le coller dans un tableau de type Variant déclaré comme suit : Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide. José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle wrote:
> bonjour Alfred,
> SubMacro1() > Dim recip() > Set plage = Sheets("Feuil1").Range("A2:A12") > For i = 1 To plage.Count > ReDim Preserve recip(i) > recip(i) = plage(i) > Next > 'copie la liste de nom dans la feuille 2 > Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) = > Application.Transpose(recip) > End Sub
> isabelle
> Alfred WALLACE a écrit :
> > Bonjour, > > j'ai cherché (mais surement comme un pieds) ce que l'on pouvait fai re > > entre le VBA et le presse papier, je n'ai trouver que des élément s qui > > envoient des > > données "copiées" dans le presse papier.
> > Moi, je cherche à faire le contraire. > > j'ai une liste de nom, les uns en dessous des autres. dans une > > application X. > > je les selectionne, et j'aimerai, par une macro vba (je pense) > > récupérer ces valeurs dans un tableau de type Variant
> > ex : > > Dim recip(25) as Variant
> > Recip() = recup-clipboard
> > voila. > > merci encore pour vos informations.
> > José- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Si l'on s'en tient à l'objectif que tu as indiqué:
j'ai une liste de nom, les uns en dessous des autres. dans une
application X.
je les selectionne, et j'aimerai, par une macro vba (je pense)
récupérer ces valeurs dans un tableau de type Variant
il me semble que plus drectement la macro d'Isabelle t'indique comment
faire et sans avoir à gérer le presse papier.
Cordialement
--
lSteph
On 15 oct, 11:27, Alfred WALLACE <jos...@gmail.com> wrote:
Merci Isabelle, pour ton aide.
cependant, je ne vois nulle part à quel endroit
tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes.
je selectionne les données (par exemple, une liste de noms) et je les
colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier
et le coller dans un tableau de type Variant déclaré comme suit :
Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide.
José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle <i@v> wrote:
> bonjour Alfred,
> SubMacro1()
> Dim recip()
> Set plage = Sheets("Feuil1").Range("A2:A12")
> For i = 1 To plage.Count
> ReDim Preserve recip(i)
> recip(i) = plage(i)
> Next
> 'copie la liste de nom dans la feuille 2
> Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) =
> Application.Transpose(recip)
> End Sub
> isabelle
> Alfred WALLACE a écrit :
> > Bonjour,
> > j'ai cherché (mais surement comme un pieds) ce que l'on pouvait fai re
> > entre le VBA et le presse papier, je n'ai trouver que des élément s qui
> > envoient des
> > données "copiées" dans le presse papier.
> > Moi, je cherche à faire le contraire.
> > j'ai une liste de nom, les uns en dessous des autres. dans une
> > application X.
> > je les selectionne, et j'aimerai, par une macro vba (je pense)
> > récupérer ces valeurs dans un tableau de type Variant
> > ex :
> > Dim recip(25) as Variant
> > Recip() = recup-clipboard
> > voila.
> > merci encore pour vos informations.
> > José- Masquer le texte des messages précédents -
Si l'on s'en tient à l'objectif que tu as indiqué:
j'ai une liste de nom, les uns en dessous des autres. dans une application X. je les selectionne, et j'aimerai, par une macro vba (je pense) récupérer ces valeurs dans un tableau de type Variant
il me semble que plus drectement la macro d'Isabelle t'indique comment faire et sans avoir à gérer le presse papier.
Cordialement
-- lSteph
On 15 oct, 11:27, Alfred WALLACE wrote:
Merci Isabelle, pour ton aide. cependant, je ne vois nulle part à quel endroit tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes. je selectionne les données (par exemple, une liste de noms) et je les colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier et le coller dans un tableau de type Variant déclaré comme suit : Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide. José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle wrote:
> bonjour Alfred,
> SubMacro1() > Dim recip() > Set plage = Sheets("Feuil1").Range("A2:A12") > For i = 1 To plage.Count > ReDim Preserve recip(i) > recip(i) = plage(i) > Next > 'copie la liste de nom dans la feuille 2 > Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) = > Application.Transpose(recip) > End Sub
> isabelle
> Alfred WALLACE a écrit :
> > Bonjour, > > j'ai cherché (mais surement comme un pieds) ce que l'on pouvait fai re > > entre le VBA et le presse papier, je n'ai trouver que des élément s qui > > envoient des > > données "copiées" dans le presse papier.
> > Moi, je cherche à faire le contraire. > > j'ai une liste de nom, les uns en dessous des autres. dans une > > application X. > > je les selectionne, et j'aimerai, par une macro vba (je pense) > > récupérer ces valeurs dans un tableau de type Variant
> > ex : > > Dim recip(25) as Variant
> > Recip() = recup-clipboard
> > voila. > > merci encore pour vos informations.
> > José- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
isabelle
bonjour Alfred,
si tu veut absolument utilisé le presse papier, 'il faut activé la référence : Microsoft Forms 2.0 Object Library et faire la sélection de la plage à copier au préalable
Sub Macro1() Dim PressePapier As New dataobject Set PressePapier = New dataobject For Each c In Selection MonText = MonText & c Next PressePapier.SetText MonText PressePapier.PutInClipboard End Sub
isabelle
Alfred WALLACE a écrit :
Merci Isabelle, pour ton aide. cependant, je ne vois nulle part à quel endroit tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes. je selectionne les données (par exemple, une liste de noms) et je les colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier et le coller dans un tableau de type Variant déclaré comme suit : Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide. José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle wrote:
bonjour Alfred,
SubMacro1() Dim recip() Set plage = Sheets("Feuil1").Range("A2:A12") For i = 1 To plage.Count ReDim Preserve recip(i) recip(i) = plage(i) Next 'copie la liste de nom dans la feuille 2 Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) >> Application.Transpose(recip) End Sub
isabelle
Alfred WALLACE a écrit :
Bonjour, j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire entre le VBA et le presse papier, je n'ai trouver que des éléments qui envoient des données "copiées" dans le presse papier.
Moi, je cherche à faire le contraire. j'ai une liste de nom, les uns en dessous des autres. dans une application X. je les selectionne, et j'aimerai, par une macro vba (je pense) récupérer ces valeurs dans un tableau de type Variant
ex : Dim recip(25) as Variant
Recip() = recup-clipboard
voila. merci encore pour vos informations.
José
bonjour Alfred,
si tu veut absolument utilisé le presse papier,
'il faut activé la référence : Microsoft Forms 2.0 Object Library
et faire la sélection de la plage à copier au préalable
Sub Macro1()
Dim PressePapier As New dataobject
Set PressePapier = New dataobject
For Each c In Selection
MonText = MonText & c
Next
PressePapier.SetText MonText
PressePapier.PutInClipboard
End Sub
isabelle
Alfred WALLACE a écrit :
Merci Isabelle, pour ton aide.
cependant, je ne vois nulle part à quel endroit
tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes.
je selectionne les données (par exemple, une liste de noms) et je les
colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier
et le coller dans un tableau de type Variant déclaré comme suit :
Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide.
José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle <i@v> wrote:
bonjour Alfred,
SubMacro1()
Dim recip()
Set plage = Sheets("Feuil1").Range("A2:A12")
For i = 1 To plage.Count
ReDim Preserve recip(i)
recip(i) = plage(i)
Next
'copie la liste de nom dans la feuille 2
Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) >> Application.Transpose(recip)
End Sub
isabelle
Alfred WALLACE a écrit :
Bonjour,
j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire
entre le VBA et le presse papier, je n'ai trouver que des éléments qui
envoient des
données "copiées" dans le presse papier.
Moi, je cherche à faire le contraire.
j'ai une liste de nom, les uns en dessous des autres. dans une
application X.
je les selectionne, et j'aimerai, par une macro vba (je pense)
récupérer ces valeurs dans un tableau de type Variant
si tu veut absolument utilisé le presse papier, 'il faut activé la référence : Microsoft Forms 2.0 Object Library et faire la sélection de la plage à copier au préalable
Sub Macro1() Dim PressePapier As New dataobject Set PressePapier = New dataobject For Each c In Selection MonText = MonText & c Next PressePapier.SetText MonText PressePapier.PutInClipboard End Sub
isabelle
Alfred WALLACE a écrit :
Merci Isabelle, pour ton aide. cependant, je ne vois nulle part à quel endroit tu récupéres le contenu du presse papier ?
j'ai surement mal formulé ma question, je m'explique :
je suis dans un document X, comme word, ou le blocnotes. je selectionne les données (par exemple, une liste de noms) et je les colles dans le presse papier (CTRL+C)
j'aimerai, en vba, récupérer le contenu de ce presse papier et le coller dans un tableau de type Variant déclaré comme suit : Dim recip(25) as Variant
voili voilou ..
Merci encore pour votre aide. José (heu alfred c'est mon pseudo ...)
On 14 oct, 18:14, isabelle wrote:
bonjour Alfred,
SubMacro1() Dim recip() Set plage = Sheets("Feuil1").Range("A2:A12") For i = 1 To plage.Count ReDim Preserve recip(i) recip(i) = plage(i) Next 'copie la liste de nom dans la feuille 2 Sheets("Feuil2").Range("A1").Resize(UBound(recip, 1), 1) >> Application.Transpose(recip) End Sub
isabelle
Alfred WALLACE a écrit :
Bonjour, j'ai cherché (mais surement comme un pieds) ce que l'on pouvait faire entre le VBA et le presse papier, je n'ai trouver que des éléments qui envoient des données "copiées" dans le presse papier.
Moi, je cherche à faire le contraire. j'ai une liste de nom, les uns en dessous des autres. dans une application X. je les selectionne, et j'aimerai, par une macro vba (je pense) récupérer ces valeurs dans un tableau de type Variant