Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[EXCEL]Copia Solo Valori

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[EXCEL]Copia Solo Valori

Postdi carlodag » 06/05/10 14:47

Salve ho una codice del genere nel VB di Excel

Codice: Seleziona tutto
Sub Pulsante4_Clic()
Worksheets("CALENDARIO").Activate
 Set R = Range("C2:C370")
 For n = 1 To R.Rows.Count
    If R.Cells(n, 1) = Worksheets("MENU").Range("I9") Then
          R.Cells(n, 2).Copy Destination:=Worksheets("MENU").Range("F14")
          R.Cells(n + 1, 2).Copy Destination:=Worksheets("MENU").Range("H14")
          R.Cells(n + 2, 2).Copy Destination:=Worksheets("MENU").Range("J14")
          R.Cells(n + 3, 2).Copy Destination:=Worksheets("MENU").Range("L14")
          R.Cells(n + 4, 2).Copy Destination:=Worksheets("MENU").Range("N14")
          R.Cells(n + 5, 2).Copy Destination:=Worksheets("MENU").Range("P14")
          R.Cells(n + 6, 2).Copy Destination:=Worksheets("MENU").Range("R14")
   End If
Next n


ora dal calendario non voglio copiare preciso cosa c'è nella cella ma solo il valore che compare nella cella perchè li ho un'altro codice dovè va a leggere i dati in un'altro foglio.

Spero di essere stato chiaro.
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo

Sponsor
 

Re: [EXCEL]Copia Solo Valori

Postdi Francesco53 » 06/05/10 15:27

Ciao carlodag,
prova a sostituire
.Copy Destination:
con
.Value

Francesco
S.O. Vista e Office 2007
Francesco53
Utente Senior
 
Post: 647
Iscritto il: 20/02/10 18:45

Re: [EXCEL]Copia Solo Valori

Postdi carlodag » 06/05/10 15:44

Francesco53 ha scritto:Ciao carlodag,
prova a sostituire
.Copy Destination:
con
.Value

Francesco


Ho fatto come dici ma non mi copia niente invece prima mi copiava una parte della formula che c'è nell'altra cella
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo

Re: [EXCEL]Copia Solo Valori

Postdi Francesco53 » 06/05/10 16:24

Sostituisci una riga intera e riprova:
R.Cells(n + 1, 2).Copy Destination:=Worksheets("MENU").Range("H14")
con
R.Cells(n + 1, 2).Value=Worksheets("MENU").Range("H14")
Francesco
S.O. Vista e Office 2007
Francesco53
Utente Senior
 
Post: 647
Iscritto il: 20/02/10 18:45

Re: [EXCEL]Copia Solo Valori

Postdi carlodag » 06/05/10 17:35

Con questo codice che mi hai dato ho notato che cancella il valore dalla cella dove dovrebbe copiare e non mette nulla dove dovrebbe copiare solo i valori.

forse dimentichi qualche passaggio??'
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo

Re: [EXCEL]Copia Solo Valori

Postdi carlodag » 06/05/10 17:46

Questo è il codice completo.

Codice: Seleziona tutto
Sub Pulsante4_Clic()
Worksheets("CALENDARIO").Activate
 Set R = Range("C2:C370")
 For n = 1 To R.Rows.Count
    If R.Cells(n, 1) = Worksheets("MENU").Range("I9") Then
      R.Cells(n, 2).Value = Worksheets("MENU").Range("F14")
          R.Cells(n + 1, 2).Value = Worksheets("MENU").Range("H14")
          R.Cells(n + 2, 2).Value = Worksheets("MENU").Range("J14")
          R.Cells(n + 3, 2).Value = Worksheets("MENU").Range("L14")
          R.Cells(n + 4, 2).Value = Worksheets("MENU").Range("N14")
          R.Cells(n + 5, 2).Value = Worksheets("MENU").Range("P14")
          R.Cells(n + 6, 2).Value = Worksheets("MENU").Range("R14")
   End If
Next n


Worksheets("CALENDARIO").Activate
 Set R = Range("C2:C370")
 For n = 1 To R.Rows.Count
    If R.Cells(n, 1) = Worksheets("MENU").Range("I9") Then
          R.Cells(n, 3).Value = Worksheets("MENU").Range("F15")
          R.Cells(n + 1, 3).Value = Worksheets("MENU").Range("H15")
          R.Cells(n + 2, 3).Value = Worksheets("MENU").Range("J15")
          R.Cells(n + 3, 3).Value = Worksheets("MENU").Range("L15")
          R.Cells(n + 4, 3).Value = Worksheets("MENU").Range("N15")
          R.Cells(n + 5, 3).Value = Worksheets("MENU").Range("P15")
          R.Cells(n + 6, 3).Value = Worksheets("MENU").Range("R15")
   End If
Next n


Worksheets("MENU").Activate
'Range("F14:S14").Borders(xlEdgeBottom).LineStyle = xlDash
'Range("F15:S15").Borders(xlEdgeBottom).LineStyle = xlDash

Exit Sub
End Sub
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo

Re: [EXCEL]Copia Solo Valori

Postdi Francesco53 » 06/05/10 18:27

Hai ragione, bisogna invertire io ho provato è funziona
Worksheets("Foglio1").Range("H14") = Cells(n + 1, 2).Value
Worksheets("Foglio1").Range("J14") = Cells(n + 2, 2).Value
Francesco
S.O. Vista e Office 2007
Francesco53
Utente Senior
 
Post: 647
Iscritto il: 20/02/10 18:45

Re: [EXCEL]Copia Solo Valori

Postdi Francesco53 » 06/05/10 18:29

Naturalmente il tuo Foglio1 e Menu
Worksheets("Foglio1") è
Worksheets("Menu")
S.O. Vista e Office 2007
Francesco53
Utente Senior
 
Post: 647
Iscritto il: 20/02/10 18:45

Re: [EXCEL]Copia Solo Valori

Postdi Francesco53 » 06/05/10 18:46

Ti allego la macro, provala
Codice: Seleziona tutto
Sub Pulsante4_Clic()
    Worksheets("CALENDARIO").Activate
    Set R = Range("C2:C370")
    For n = 1 To R.Rows.Count
        If R.Cells(n, 1) = Worksheets("MENU").Range("I9") Then
              Worksheets("MENU").Range("F14") = R.Cells(n, 2).Value
              Worksheets("MENU").Range("H14") = R.Cells(n + 1, 2).Value
              Worksheets("MENU").Range("J14") = R.Cells(n + 2, 2).Value
              Worksheets("MENU").Range("L14") = R.Cells(n + 3, 2).Value
              Worksheets("MENU").Range("N14") = R.Cells(n + 4, 2).Value
              Worksheets("MENU").Range("P14") = R.Cells(n + 5, 2).Value
              Worksheets("MENU").Range("R14") = R.Cells(n + 6, 2).Value
       End If
    Next n


    Worksheets("CALENDARIO").Activate
    Set R = Range("C2:C370")
    For n = 1 To R.Rows.Count
        If R.Cells(n, 1) = Worksheets("MENU").Range("I9") Then
              Worksheets("MENU").Range("F15") = R.Cells(n, 3).Value
              Worksheets("MENU").Range("H15") = R.Cells(n + 1, 3).Value
              Worksheets("MENU").Range("J15") = R.Cells(n + 2, 3).Value
              Worksheets("MENU").Range("L15") = R.Cells(n + 3, 3).Value
              Worksheets("MENU").Range("N15") = R.Cells(n + 4, 3).Value
              Worksheets("MENU").Range("P15") = R.Cells(n + 5, 3).Value
              Worksheets("MENU").Range("R15") = R.Cells(n + 6, 3).Value
       End If
    Next n


    Worksheets("MENU").Activate
    'Range("F14:S14").Borders(xlEdgeBottom).LineStyle = xlDash
    'Range("F15:S15").Borders(xlEdgeBottom).LineStyle = xlDash

    Exit Sub
    End Sub

Spero vada bene.
ciao
Francesco
S.O. Vista e Office 2007
Francesco53
Utente Senior
 
Post: 647
Iscritto il: 20/02/10 18:45

Re: [EXCEL]Copia Solo Valori

Postdi carlodag » 07/05/10 16:24

Ottimo va alla grande bravissimo

Grazie Mille
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo

Re: [EXCEL]Copia Solo Valori

Postdi Pacc » 16/11/14 13:56

Salve sono Carlodag non riesco piu a resettare il mio account ed ho deciso di ricrearne un altro.

Come posso ottenere lo stesso risultato con questo codice???


Codice: Seleziona tutto
Sub Pulsante64_Clic()
If Worksheets("1°Squadra").Range("A1") = "GENNAIO" Then
Worksheets("Calendario").Range("B3:AF5").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "FEBBRAIO" Then
Worksheets("Calendario").Range("B6:AF8").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "MARZO" Then
Worksheets("Calendario").Range("B9:AF11").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "APRILE" Then
Worksheets("Calendario").Range("B12:AF14").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "MAGGIO" Then
Worksheets("Calendario").Range("B15:AF17").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "GIUGNO" Then
Worksheets("Calendario").Range("B18:AF20").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "LUGLIO" Then
Worksheets("Calendario").Range("B21:AF23").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "AGOSTO" Then
Worksheets("Calendario").Range("B24:AF26").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "SETTEMBRE" Then
Worksheets("Calendario").Range("B27:AF29").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "OTTOBRE" Then
Worksheets("Calendario").Range("B30:AF32").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "NOVEMBRE" Then
Worksheets("Calendario").Range("B33:AF35").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If
If Worksheets("1°Squadra").Range("A1") = "DICEMBRE" Then
Worksheets("Calendario").Range("B36:AF38").Copy Destination:=Worksheets("1°Squadra").Range("H1:AL3")
End If


End Sub
Pacc
Utente Junior
 
Post: 19
Iscritto il: 16/11/14 13:52

Re: [EXCEL]Copia Solo Valori

Postdi Anthony47 » 17/11/14 03:21

Immagino che la domanda sia: come riesco, in questo codice, a copiare solo i valori?

Ma in A1 c' e' una stringa o una data formattata per visualizzare solo la scritta mese? (formata la cella "Numero" e dicci cosa visualizzi).

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [EXCEL]Copia Solo Valori

Postdi Pacc » 17/11/14 21:50

Ciao grazie per la risposta, allora in A1 c'è scritto GENNAIO e il formato è generico, ma ho ottenuto lo stesso risultato usando questo codice

Codice: Seleziona tutto
Sub Pulsante64_Clic()
If Worksheets("1°Squadra").Range("A1") = "GENNAIO" Then
Worksheets("Calendario").Range("B3:AF5").Copy
Worksheets("1°Squadra").Range("H1:AL3").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End IfÏ


è funzionale lo stesso??? per ora a me va bene.
Pacc
Utente Junior
 
Post: 19
Iscritto il: 16/11/14 13:52

Re: [EXCEL]Copia Solo Valori

Postdi Anthony47 » 18/11/14 01:45

Se funziona va bene cosi’
In alternative avrei usato qualcosa come
Codice: Seleziona tutto
Sub Pulsante64_Clic()
myoff = Month(DateValue("1 " & Worksheets("1°Squadra").Range("A1") & " 2000"))
Worksheets("Calendario").Range("B3:AF5").Offset(3 * myoff).Copy
Worksheets("1°Squadra").Range("H1:AL3").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub

In sostituzione di tutto il codice che avevi pubblicato

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [EXCEL]Copia Solo Valori

Postdi Pacc » 18/11/14 22:01

Cioè mi confermi che usando questo codice posso cambiare tutto quello che ho pubblicato prima??? perchè io ho pubblicato solo la prima parte ma quello si ripete per ogni mese.

Grazie
Pacc
Utente Junior
 
Post: 19
Iscritto il: 16/11/14 13:52

Re: [EXCEL]Copia Solo Valori

Postdi Anthony47 » 19/11/14 13:07

Si, copre tutti i 12 mesi…

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [EXCEL]Copia Solo Valori

Postdi Pacc » 19/11/14 20:49

Ottimo
Pacc
Utente Junior
 
Post: 19
Iscritto il: 16/11/14 13:52


Torna a Applicazioni Office Windows


Topic correlati a "[EXCEL]Copia Solo Valori":


Chi c’è in linea

Visitano il forum: Francesco53 e 18 ospiti