Moderatori: Anthony47, Flash30005
ahidai ha scritto:Un saluto a tutti, è da un pò di tempo che manco, ed eccomi a chiedere di nuovo aiuto (sempre se è possibile).
Ecco cosa avrei bisogno, ho trovato in rete un file di nome "Quiz_prepara" fatto molto bene per le mie esigenze, però avrei bisogno del vostro aiuto per ampliarlo:
1)Sul foglio "Prep" se si seleziona il numero delle domande e le diverse materie non elabora le diverse domande (sia il numero totale sia le materie) sul foglio "test4";
2) Selezionando "S" alla voce "File o Stampante" non stampa "se è possibile scegliere la stampante o la stampante in pdf".
Allego il file Sperando di essermi spiegato e ringrazio anticipatamente.
http://www.filedropper.com/quizprepara
nFs = Cells(21, 7)
Flash30005 ha scritto:Il file da te inviato crea le domande come richiesto sia in numero che con materie diversificate
Per quanto riguarda l'opzione stampa (cella G21)
debbo dirti che non è abilitato in quanto manca sia il comando che la macro
infatti nel codice trovi solo questa riga
- Codice: Seleziona tutto
nFs = Cells(21, 7)
ma non c'è alcun riscontro il tutto il progetto
ciao
Flash30005 ha scritto:Io non so perché non ho approfondito
ma secondo me se inserisci 10 domande
significa che alla fine avrai solo 10 domande (forse miste)
e non vorrei proprio entrare in merito ad un programma già compilato
Flash30005 ha scritto:Ho apportato delle modifiche per implementare le materie anche se l'ideatore aveva un po' di idee confuse
cambiando il settaggio dei fogli durante il processo
Prova questo file
ciao
Flash30005 ha scritto:Ma intendi "miscelare" casualmente anche le domande tra le materie?
Interpretare quel codice non è stato facile per me, e ho trovato la modifica più indicata per quella struttura di programma.
Fare ciò che dici significa smontare completamente la macro e quindi pensare, in quanto più "conveniente", a rifare tutto dall'inizio.
Per questo ho scritto che non intendevo mettere mano su un programma ideato da altri.
Ciao
Flash30005 ha scritto:Non è per non aiutarti ma quel programma prevede una filtratura per materia
dopo filtrata copia le domande nel foglio appoggio e da questo preleva le 10 domande casuali e le riporta nel foglio destinazione (Test4)
Adesso ti renderai conto che non è possibile filtrare due o più materie e tanto meno, se così fosse, poter scegliere casualmente 10 domande per materia (magari su due materie potresti avere 18 domande di una e 2 dell'altra).
Pertanto l'unica cosa più razionale da fare con quella procedura era quella di creare un ciclo for... next che creasse indipendentemente un foglio test, per materia, con ognuno le 10 domande.
Malgrado questo le difficoltà non sono state poche, in quanto l'ideatore ha "pensato bene" di cambiare i settaggi dei fogli e anche di alcune variabili che avrebbero dovuto essere e rimanere come dichiarate all'inizio della macro.
Ciao
Flash30005 ha scritto:Sai?
Riflettevo sul caso e ti chiedo conferma se le domande devono essere miscelate tra loro ,
non ne capisco la ragione perché normalmente vengono sempre separate per materia,
quindi se possono essere separate per materia si potrebbe pensare ad una macro che,
dopo aver creato i singoli fogli con domande casuali,
compili un nuovo foglio con tutte le materie richieste ma non con domande mischiate.
Altrimenti creare una macro che prenda casualmente (ma tutte) le domande nei fogli creati
(più complessa della precedente ma non impossibile)
Forse una via di mezzo potrebbe andare bene
se nel foglio riepilogo test (con tutte le materie)
avesse una domanda della prima materia, una della seconda materia, una della terza etc
poi ricomincia con una della prima materia, poi una della seconda etc., potrebbe andare bene?
ciao
Next CCM ''Esistente e lasciare così
Call Finale '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< AGGIUNGERE
Sheets("Prep").Select 'Esistente
MsgBox "Operazione terminata", , "Creazione Quiz" 'Esistente e lasciare così
sSi ''Esistente e lasciare così
End Sub ''Esistente e lasciare così, Fine Macro
Sub Finale()
Inizio = 0
For FF = 1 To Worksheets.Count
If Mid(Sheets(FF).Name, 1, 4) = "Test" Then
FoglioT = Worksheets(FF).Name
If Inizio = 0 Then
Sheets.Add
ActiveSheet.Name = "TestFinale"
Sheets("TestFinale").Move After:=Worksheets(Worksheets.Count)
End If
Inizio = Inizio + 1
Worksheets(FoglioT).Select
RR = Cells(Rows.Count, 2).End(xlUp).Row
RRF = Sheets("TestFinale").Cells(Rows.Count, 2).End(xlUp).Row
Range("A1:C" & RR).Copy Destination:=Sheets("TestFinale").Cells(RRF, 1)
If Inizio = 1 Then
Columns("A:C").Select
Selection.Copy
Sheets("TestFinale").Select
Columns("A:C").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
End If
End If
Next FF
End Sub
Flash30005 ha scritto:Ho modificato sia la macro postata qui su (ora vengono cancellati tutti i fogli Test... lasciando solo il test generale
e implementata con una macro di stampa (con scelta stampante)
allego questo file
Ciao
ahidai ha scritto:... si potrebbe mettere un cronometro con pulsante "start" e "stop" del cronometro, scusami se chiedo troppo ma così sarebbe perfetto, non solo per me ma anche per tutti gli altri del forum che hanno necessità di esercitarsi per qualche concorso.
Flash30005 ha scritto:Pensandoci bene non è affatto utile lasciare i fogli originali singoie materie per effettuare la correzione visto che il test viene fatto sul foglio generale
pertando ho modificato opportunatamente la macro per correggere direttamente ilo foglio TestFinale
Ho aggiungo anche il tempo di esecuzione test
quindi questo file (versione 5) sostituisce tutti i precedenti
ciao
Torna a Applicazioni Office Windows
Inserire dati filtrati da 2 file ad un terzo file Autore: Ricky0185 |
Forum: Applicazioni Office Windows Risposte: 14 |
Inserire add.in nella barra di avvio veloce in excel 2003 Autore: Ricky0185 |
Forum: Applicazioni Office Windows Risposte: 4 |
Excel: problema con date se devo unirle a testi Autore: valle1975 |
Forum: Applicazioni Office Windows Risposte: 5 |
Visitano il forum: Nessuno e 20 ospiti