Newsgroup: it.comp.lang.visual-basic
Titolo: Assegnare a una variabile il risultato di copia-incolla

Ciao,
sono nuova, e devo assegnare ad una variabile il valore che ho trovato
tramite con incolla
io ho al momento fatto questo:
Sub TEST1()
'
' TEST1 Macro
' Dichiaro la variabile che contiene il nome del protocollo
' Sposto il cursore inizio pagina, lo muovo dopo il nr. protocollo
    Selection.HomeKey Unit:=wdStory
    Selection.MoveRight Unit:=wdCharacter, Count:=11
' Seleziono il nr. di protocollo e lo copio
    Selection.MoveRight Unit:=wdCharacter, Count:=17, Extend:=wdExtend
    Selection.Copy
    strProcollo = Selection.Paste
    Selection.TypeParagraph
    Selection.TypeText "Ecco la funzione incolla"
    Selection.MoveRight Unit:=wdCharacter, Count:=2
    Selection.InsertAfter strProtocollo
Però mi da errore, dice che strProtocollo=Selection.Paste   è il
.Paste che non gli piace, come devo fare, avete suggerimenti????
Grazie,
Samantha

Ho riprovato, ma con scarso successo:
Buongiorno Dragone Bianco,
innanzitutto grazie x la risposta!!! :)
In breve, volevo testare che il valore passato alla variabile esista,
mi spiego meglio incollandoti il codice e commentandolo
[CODE]
Const conPercorso As String = "C:\Offerte"
'La variabile strProtocollo contiene un codice che è testo
Dim strProtocollo As String
    With Selection
    .HomeKey unit:=wdStory
    .MoveRight unit:=wdCharacter, Count:=11
    .MoveRight unit:=wdCharacter, Count:=17, Extend:=wdExtend
    [COLOR="Lime"]'Ho selezionato il codice che mi interessa, e lo
copio[/color]
    .Copy
    [COLOR="Lime"]'Siccome se lo copio mi viene tagliato, lo incollo
subito e nel documento di word mi ricompare il testo selezionato e
tagliato.[/color]
    .Paste
  [COLOR="Lime"]'Qui come hai detto tu assegno alla variabile
strProtocollo la selection.text [/color]
   strProtocollo = .Text
    .MoveRight unit:=wdCharacter, Count:=4
    [COLOR="Lime"]'con incolla incollo una seconda volta il protocollo,
e funziona[/color]
    .Paste
    .MoveRight unit:=wdCharacter, Count:=4
    [COLOR="Lime"]'Ma purtroppo, quando gli dico di inserire in word la
variabile che contiene il protocollo, non succede nulla, su word non mi
da nulla[/COLOR]:mad:
    .InsertAfter strProtocollo
    End With
 ChangeFileOpenDirectory conPercorso
   With Word.Application
        .ActiveDocument.SaveAs FileName:=Selection.Text,
FileFormat:=wdFormatDocument
     End With
[COLOR="Lime"]' Mi da un errore di runtime 4198
End Sub
[/code]
Lo scopo della mia funzione, è quello di copiare il numero di
protocollo presente nel documento, e lo faccio quando faccio la
selezione. Salvare il file con numero di protocolo, nella directory
conPercorso=c:/Offerte
Ho provato anche questa opzione
  .ActiveDocument.SaveAs FileName:=strProtocollo,
ma non funziona lo stesso
Quindi mi chiedo,
1) come faccio passare ad una variabile il testo selezionato?
2) come faccio a testare che la variabile contenga il testo che le ho
passato?
3) come faccio a salvare il file con il nome che contenga la variabile?
Ho forse sbagliato sintassi?
Ho sottomano due testi (presi in biblio...): :book:
 il primo è Le macro di office di DavidBoctor, ma è vecchio
il secondo è Word: Macro e VBA  da dove ho tratto parte del codice, ma
ciò che nel libro sembra funzionare, tipo selection.insertAfter
NomeVariabile da me non va.
Grazie x qualsiasi help,
Sam