|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Feb 2008
Messaggi: 1514
|
Macro e Codice VBA
Colgo l'occazione di un post di Wjmat (in Excel) per aprire una discussione tra tutti i volenterosi e partecipanti che desiderano parlare di questo argomento. Desiderei che venisse descritto nei minimi particolari, i passaggi per come si possa risolvere la questione.
Naturalmente farò un up ogni volta che sparisce in seconda pagina. Ps. Spero che emmedi non chiuda questo post, perchè l'argomento può essere utile in Word,Excel e altro |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Feb 2008
Messaggi: 1514
|
Inizio io....,usando per l'occazione il registratore...
Visto che il files prova.xls contiene delle macro... e siccome mi fido delle persone che l'hanno spostato, apro Excel e in Strumenti/Macro/Protezioni spunto la casella Medio Apro il files prova.xls, mi avverte che ci sono delle macro e clicco Attiva Macro (cosa da non fare se il files arriva da sconosciuti) Adesso inizio a risolvere la faccenda..... Quote:
Strumenti/Macro/Registra nuova Macro, dandogli il nome ex PIPPO (Significa che da questo istante Excel, memorizza tutti i passaggi che farò sul monitor, ....come detto devo importare altri dati) A)Riapriamo il file Prova2.xls B)Dal menu scegliamo DATI/IMPORTA dati esterni/Importa Dati troviamo e selezioniamo il files "da importare.xls" (nelle varie opzioni scegliamo OK e in nuovo foglio) C)Selezionare la colonna A e Inserisci/Colonna D)Scrivere in A2 =SE(C2="n.d.";CONCATENA(B2;"Abweichung");CONCATENA(B2;C2)) E)Selezionare la cella e trascinarla in basso sino alla riga 533 F)Ritorniamo sul foglio1 e nella cella H9 scrivo =SE(VAL.NON.DISP(CERCA.VERT(CONCATENA($A9;H$8);Foglio5!$A$2:$F$553;4;FALSO));"";CERCA.VERT(CONCATENA($A9;H$8);Foglio5!$A$2:$F$553;4)) G)seleziono la cella e la trascino a destra per altre 3 celle H)Seleziono le 4 celle e le trascino sino alla riga 26 I)lSeleziono l'area H9 L)Elimino il foglio creato con Importa Dati A questo punto fermate la macro Strumenti/Macro/ferma registrazione. Chiudo Excel e lo riapro (la macro, darebbe un'errore sulla ricerca e foglio da eliminare) per verificarla....... PS. Naturalmente si sarebbe dovuto fare anche sugli altri fogli PPS. Questo sistema può andare bene per tutti quei dati che saranno in futuro fissi/stabili. Infatti basta una riga in più o un foglio che bisogna subito modificare la macro Adesso passo la palla per vedere come fatte a farlo tramite VBA Io stò qui in silenzio ...e come codice vi sposto la macro Ultima modifica di Raffaele53 : 11-07-2010 alle 15:51. |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Feb 2008
Messaggi: 1514
|
Mio esempio http://myfreefilehosting.com/f/7c9f80221e_0.03MB
file prova da riempire https://docs.google.com/uc?export=do...JmMzQyMGM3NDcz file da importare https://docs.google.com/uc?export=do...A2YzU0MzVjYjNh Ultima modifica di Raffaele53 : 14-07-2010 alle 07:25. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Feb 2008
Messaggi: 1514
|
Non voglio fare un monologo......, voglio capire VBA e altri sistemi.
Mi interessa le procedure, non il risultato. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Feb 2008
Messaggi: 1514
|
Up....
Questa cosa mi stà facendo dannare, nel foglio da importare ho inserito nella colonna A un colonna con questa formula =SE(C2="";"";SE(C2="N.D.";CONCATENA(B2&"Abweichung");CONCATENA(B2&C2))) OK, adesso apro il foglio Prova.xls e metto in H9 (tutti fogli) questa formula =SE(VAL.NON.DISP(CERCA.VERT(CONCATENA($A9;H$8);'da importare.xls'!$A$2:$F$999;1;FALSO));"";CERCA.VERT(CONCATENA($A9;H$8);'da importare.xls'!$A$2:$F$999;4)) Trascino a destra e in basso, noto che in alcuni fogli la fomula mi ritorna con 0,00 e nel chiudere il foglio VB mi dice intervallo non compreso.....!?! Ho Excel 2003, vi risulta pure a Voi (opzioni foglio calcolo automatico) |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Feb 2008
Messaggi: 1514
|
Wjmat, magari avrai gia risolto ma potresti controllare un errore.....
Apri il files Prova e modifica una qualsiasi cella H9 e salva. Ti da un errore in VB? Se risolvo questo e un'altro errore (magari sono collegati) potrei fare la macro sul files "da importare" in modo da non toccare "Prova" Mi sai anche dire se i dati sono definitivi oppure un domani ne veranno aggiunti. Ciao Ultima modifica di Raffaele53 : 26-07-2010 alle 10:35. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:26.



















