Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[excel] taglia/incolla su due fogli

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] taglia/incolla su due fogli

Postdi anug_un_rama » 07/01/09 13:09

ciao, ho fatto il seguente codice per tagliare e copiare delle colonne contenenti formule; gho due fogli, temp1 e temp, uso temp come appoggio
purtroppo va bene fin quando deve tagliare e incollare nell'altro foglio ed ordinare ma quando deve tagliare e incollare da temp a temp1 non succede nulla....
Codice: Seleziona tutto
Sub temp1_Rettangolo1_Clic()
Dim ra, c As Integer
ra = Worksheets("temp1").Range("d1").Value ' ra è la variabile che indica la lunghezza dell'elenco

           
            For c = 1 To 3
            x = Cells(1, c).Formula
               
                If Mid(x, 1, 1) = "=" Then
                    Range(Cells(1, c), Cells(ra, c)).Select
                    Selection.Cut
                    Sheets("temp").Select
                    Range(Cells(1, c), Cells(ra, c)).Select
                    ActiveSheet.Paste
                    Sheets("temp1").Select
                End If
               
            Next
            Range("A1:c" & ra).Select
        Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
       
Sheets("temp").Select


For c = 1 To 3
   y = Cells(1, c).Formula
                If Mid(y, 1, 1) = "=" Then
                    Range(Cells(1, c), Cells(ra, c)).Select
                  Selection.Cut
                    Sheets("temp1").Select
                    Range(Cells(1, c), Cells(ra, c)).Select
                    ActiveSheet.Paste
                    Sheets("temp").Select
               End If
Sheets("temp1").Select
Next

End Sub
anug_un_rama
Utente Junior
 
Post: 46
Iscritto il: 02/01/09 12:47

Sponsor
 

Re: [excel] taglia/incolla su due fogli

Postdi Anthony47 » 07/01/09 14:48

Difficile immaginare che cosa ogni istruzione dovrebbe fare diverso da quello che fa.
Dovresti debuggare la macro;
-con F8 puoi eseguire passo passo e vedere l' effetto sul tuo foglio: posizione il cursore su una riga del codice (1 click), ogni F8 viene eseguita una istruzione (quella evidenziata); posizionando il cursore sopra una variabile o una istruzione puoi vederne il valore corrente.
-Puoi mettere un break con F9: 1 click sopra l' istruzione, F9 per mettere/togliere il break.
-Per eseguire la macro fino alla fine (o fino al primo break), F5.

In questo modo potrai capire dove la macro fa una cosa diversa da quella che ti aspettavi, e decidere di conseguenza, compreso modificare al volo una istruzione, o la prossima istruzione da eseguire.

Se questa macro e' legata al tentativo di ordinare una tabella escludendo delle colonne, hai verificato eseguendo manualmente il taglia/cuci e poi Ordina se la tecnica in realta' funziona?

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: 13891
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] taglia/incolla su due fogli

Postdi anug_un_rama » 07/01/09 15:53

Anthony47 ha scritto:Difficile immaginare che cosa ogni istruzione dovrebbe fare diverso da quello che fa.
Dovresti debuggare la macro;
-con F8 puoi eseguire passo passo e vedere l' effetto sul tuo foglio: posizione il cursore su una riga del codice (1 click), ogni F8 viene eseguita una istruzione (quella evidenziata); posizionando il cursore sopra una variabile o una istruzione puoi vederne il valore corrente.
-Puoi mettere un break con F9: 1 click sopra l' istruzione, F9 per mettere/togliere il break.
-Per eseguire la macro fino alla fine (o fino al primo break), F5.

In questo modo potrai capire dove la macro fa una cosa diversa da quella che ti aspettavi, e decidere di conseguenza, compreso modificare al volo una istruzione, o la prossima istruzione da eseguire.

Se questa macro e' legata al tentativo di ordinare una tabella escludendo delle colonne, hai verificato eseguendo manualmente il taglia/cuci e poi Ordina se la tecnica in realta' funziona?

Ciao.


grazie per la risposta immediata (come sempre del resto)
allora devo provare a fare il debug, ma la macro esaguita a pezzi funziona (testata)
ossia
1.taglia la selezione
2. la incolla sul foglio d'appoggio
3 . fa l'ordinamento
4. se vado a vedere i valori della colonna tagliata nel foglio temp sono giusti
NON fa il taglia e incolla dal foglio temp a quello principale.. può essere qualche casino fatto da activesheet? come gli dico di copiare la selezione specificando il nome del foglio?
grazie ancora
anug_un_rama
Utente Junior
 
Post: 46
Iscritto il: 02/01/09 12:47

Re: [excel] taglia/incolla su due fogli

Postdi anug_un_rama » 07/01/09 19:09

l'errore era banalissimo..
il foglio che usavo come temp aveva una colonna già piena
asd
shame on me

grazie ancora!
e finalmente posso dire ordinamento risolto alè
anug_un_rama
Utente Junior
 
Post: 46
Iscritto il: 02/01/09 12:47


Torna a Applicazioni Office Windows


Topic correlati a "[excel] taglia/incolla su due fogli":


Chi c’è in linea

Visitano il forum: patel e 12 ospiti