Gli esercizi N.1 e 2, sono troppo semplici PER VOI, l'ouput Grafico potrebbe mettervi in difficoltà..
Esercizio n.1
Non fate caso alla parte evidenziata in verde.
N70 = sommatoria di N30 + ( N47 oppure N67 )
La SCELTA fra N47 e N67 viene fatta in funzione se venga inserito un valore in K33 ( e conseguentemente in K42 ) oppure venga inserito un valore in K50 ( e conseguentemente in K61 ).
Esercizio n.1
In B2 metto un numero compreso fra B8 e B17, in A5 metto R o D.
In C2 e D2 mi devono arrivare i corrispondenti valori.
A seconda di R o D, mi devono uscire contemporaneamente i corrispondenti valori in F2 G2 oppure in I2 J2.
Avevo provato a risolvere la parte semplice, ci ero riuscito, ma adesso non funziona.
Es. Inserendo 3 in B2 e D in A5 à C2=C, D2=topo; I2=21,00 J2=17,85.
Output Grafico
La tabella di matrice C5-D9 può essere completata inserendo nella colonna C, 5 possibili valori e nella colonna D, 5 valori la cui somma non supera 10 ( 10 spazi ).
1. MATRICE K5-M14
Vorrei che la matrice K5-M14 si compilasse automaticamente in funzione del valore della cella D18.
Es. D18=5, la matrice si dovrebbe completare fino alla cella M9; Es. D18=7, matrice completata fino alla cella M11.
La colonna M di tale matrice si dovrebbe completare con il seguente criterio:
Es. C5=2700 e D5=4 à M5=M6=M7=M8=2700+80
C6=2200 e D6=3 à M9=M10=M11=2280+80
C7=1800 e D2=2 à M12=M13=1800+80
Cioè ci devono essere tante righe nella colonna M5-M14, dello stesso valore presente nella colonna C5-M9, associato al relativo valore della colonna D5-D9. Se D5=4, avro 4 righe di valore 2780 e così via.
Se D18 diverso da 10 (es.8), dovranno essere compilate solo le celle che vanno dalla M5 alla M12 (8 celle).
2. COPPIA DI CORDINATE
2a. Linee Grandi Orizzontali
Ogni riga di ogni blocco (Xs,Ys e Xd,Yd) rappresenta le coordinate degli estremi di una singola riga à ogni blocco ha 7 righe; Ci sono 10 blocchi, ma se in D18 ci fosse stato 8, si dovevano creare in automatico 8 blocchi.
Oltre ai 10 blocchi, si devo creare 2 colonne di supporto (CE e CF). Se avessimo 8 blocchi si dovrebbero creare 2 colonne di supporto (in BS e BT).
Ogni blocco mi rappresenta una serie di linee orizzontali parallele una sopra l’altra.
2b. Linee Verticali
Ci saranno sempre 1 linea verticale in più al n° dei blocchi: Es. 10 blocchi à 11 linee verticali; Es. 8 Blocchi à 9 linee verticali.
Le celle di supporto del punto 2a) servono per completare l’ultima linea verticale.
2c. Linee Piccole Orizzontali
Ci saranno tante linee piccole orizzontali quante sono le linee verticali.
Forse, il modo in cui ho messo i dati può rendere difficile l’output grafico, ma sostanzialmente il disegno che deve uscire è un insieme di 3 blocchi di linee.
1) Linee Grandi orizzontali
Ogni serie è lunga quanto la cella corrispondente nella colonna M; Ogni serie ha linee parallele spaziate l’una rispetto all’altra di un valore presente nella colonna R
2) Linee Verticali
Le linee verticali sono tutte lunghe uguali; Parallele tra di loro, distanziate del valore presente nella colonna M.
3) Linee Piccole orizzontali
Alla base di ogni linea verticale vi è un segmento orizzontale lungo quanto la cella G18, posizionato in mezzeria.
Allego disegno di come dovrebbe venire il disegno dell’esempio.
Mi piacerebbe che il disegno si trovasse in uno sfondo bianco, se possibile, e mi piacerebbe anche ci fossero le quote presenti.
Buonasera ragazzi,
se non sono stato esaustivo o sono stato poco chiaro, perdonatemi..
Non é facilissimo quello che vorrei realizzare, e non sono bravissimo nello spiegarmi..
Ciao Deeevil, sincerità? io personalmente non mi ci metto nemmeno a leggere tutto quello che hai scritto, scomponi la cosa in vari step e riproponi il quesito e qualcuno vedrai che ti aiuterà a trovare una soluzione
Flavio - Avvisi generali e importanti!! Il crossposting è vietato. Le richieste di "pappa_pronta" sono vietate. Utilizzate i tag CODE per il codice. Leggere il Regolamento per chiarimenti PRIMA di creare nuovi thread, metti Risolto alle discussioni.
Veramente pensavo di esser stato abbastanza esaustivo..
Ultima modifica fatta da:Canapone; 11/05/17 alle 09:02
Flavio - Avvisi generali e importanti!! Il crossposting è vietato. Le richieste di "pappa_pronta" sono vietate. Utilizzate i tag CODE per il codice. Leggere il Regolamento per chiarimenti PRIMA di creare nuovi thread, metti Risolto alle discussioni.
Se non hai nemmeno letto il post come fai a dire che non é a step? Se e troppo lungo, e non hai voglia di leggerlo, grazie LO STESSO!
Accetto le critiche, ma devono essere COSTRUTTIVE.
Non leggere un post e dire "non mi ci metto neanche a leggerlo tutto", a mio parere, non è molto sensato..
Help me!![]()
Flavio - Avvisi generali e importanti!! Il crossposting è vietato. Le richieste di "pappa_pronta" sono vietate. Utilizzate i tag CODE per il codice. Leggere il Regolamento per chiarimenti PRIMA di creare nuovi thread, metti Risolto alle discussioni.
Ciao a tutti,
@Deeevil86
quello che ti ha scritto @Powerwin E' una "critica" più che costruttiva...
quello che hai postato non mi sembra affatto la richiesta di un consiglio su un problema che non riesci a risolvere, più che altro ci stai proponendo dei compiti a casa...
Non ti puoi stupire che nessuno ti abbia aiutato.
Come Powerwin, anche io non ho voglia/tempo di leggere un poema per cercare di risolvere un problema che potrebbe essere interessante o "semplice".
Il forum ti aiuta a capire "piccole cose di un grosso problema" che non ti fanno avanzare... non a risolverti "tutto il problema".
Questa è la prassi e soprattutto non aiuta a ricevere risposte il fatto di comportarsi da "presuntuoso", riferendomi a questa risposta:
Se vuoi aiuto... siamo qui.Se non hai nemmeno letto il post come fai a dire che non é a step? Se e troppo lungo, e non hai voglia di leggerlo, grazie LO STESSO!
Accetto le critiche, ma devono essere COSTRUTTIVE.
Non leggere un post e dire "non mi ci metto neanche a leggerlo tutto", a mio parere, non è molto sensato..
Ma segui i consigli di Powerwin!
Ciao
Tore
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Ciao
guardiamo oltre
ho guardato i primi due fogli
( per il terzo ci vuole un pochino di tempo)
nel primo non capisco cosa cerchi è già completato
per il secondo ti ho messo le formule (nella richiesta lo chiami 1 ma è il 2 )
per capirci tre tipi di formula che può andare bene per tutte e tre le richieste
esempi
Codice:=INDICE(C8:C17;CONFRONTA(B2;B8:B17;0))
che equivale aCodice:=SE(A5="R";INDICE(F8:F17;VALORE(B2));"")
Codice:=SE(A5="R";INDICE(F8:F17;B2);"")
ti allego il fileCodice:=SE(A5="D";CERCA.VERT(B2;B8:J17;8;FALSO);"")
Se avessi inavvertitamente urtato la sensibilità di qualcuno chiedo scusa.. ma io ho tantissimi difetti, ma non penso di essere presuntuoso. Anzi, come ho già detto diverse volte, la mia conoscenza é molto limitata, e non potrei dare alcuna lezione.
Ripeto, le critiche sono ben accette se motivate.
Se sono sembrato a qualcuno presuntuoso, arrogante o saccente, SORRY! Certamente, non era mia intenzione, anche se come OVVIO, vi sto chiedendo aiuto, non avrebbe senso un tale mio comportamento. Io cerco di essessere sempre razionale.
1) Si è vero, l' "Output Grafico" è un po complesso, e sicuramente ci vorrà un po di tempo..
2) Si è vero, ho chiamato invertendo l'esercizio n.2 con il n.1
3) L'esercizio n.2 (come chiamato nel file) va benissimo! --> GRAZIE!
4) Per l'esercizio n.1 (come chiamato nel file), premesso che, secondo me, le celle in cui dovresti operare sono N7 ( che è la somma di K33 + K42 ) e N67 ( che è la somma di K50 + K61 ) mi piacerebbe che:
- inserendo un valore in K33, automaticamente fosse inibita la possibilità di introdurre valori in K50 e K61
- inserendo un valore in K50, automaticamente fosse inibita la possibilità di introdurre valori in K33 e K42
Sostanzialmente, si deve poter compilare o la prima parte o la seconda.
GRAZIE
Ultima modifica fatta da:Canapone; 11/05/17 alle 08:59
Ciao
ti ho messo questa macro
nel foglio1
provalaCodice:Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("K33,K42")) Is Nothing And Target.Value <> "" Then Range("K50") = "" Range("K61") = "" Else If Not Intersect(Target, Range("K50,K61")) Is Nothing And Target.Value <> "" Then Range("K33") = "" Range("K42") = "" End If End If End Sub
non capisco questa formula
a cosa ti serve?Codice:=(CERCA.VERT(K33;K35:K38;1))+(CERCA.VERT(K42;K44:L45;2))
non ti basta un menu a tendina
se ricerchi il valore che scrivi in K33
da una lista ....K35:K38
e lo riporti in N47
ti è più conveniente un menu a tendina
fammi sapere
ti allego il file con macro
Ciao
altro passo avanti
nel foglio 3
ho sistemato il primo quesito
matrice K5 M14
(la tabella a sinistra per capirci)
ho utilizzato una formula vergognosamente elementare
ma funziona
ho messo anche i menu a tendina.Codice:=SE(RIF.RIGA(A1)<=D$5;C$5+80;SE((RIF.RIGA(A1)-D$5<=D$6);C$6+80;SE((RIF.RIGA(A1)-(D$5+D$6)<=D$7);C$7+80;SE((RIF.RIGA(A1)-SOMMA(D$5:D$7)<=D$8);C$8+80;SE((RIF.RIGA(A1)-SOMMA(D$5:D$8)<=D$9);C$9+80;"")))))
come si fa?
seleziona la cella interessata diciamo A1
vai in DATI
CONVALIDA DATI
CONSENTI
seleziona elenco
ELENCO
seleziona le celle dell'elenco che ti interessa diciamo A5:A20
conferma
ciao
Ho visto! Funziona tutto perfettamente! Domani ti chiedo un'altra cosa sul menù a tendina, purtroppo oggi sono in uscita presto.
GRAZIE
Ultima modifica fatta da:Canapone; 11/05/17 alle 09:00
Buongiorno!
In merito al menù a tendina ho capito come funziona, e grazie!
Ma ti vorrei chiedere qualcosina legato al menu a tendina, ma che non riguarda esclusivamente quello.
Si tratta di una mia richiesta a cui mi avevi sempre risposto te ( http://www.forumexcel.it/forum/6-dom...erca-verticale ), la parte complessa, ricordi?!
Ho creato altre colonne come la L-P, e volendo sempre vincolare la nuova colonna alla tabella (1o2) che mi hai creato apposta, pensavo che bastasse semplicemente copia-incollare la colonna L-P e modificare i dati, ma in realta non funziona, forse devo estendere in orizzontale i riferimenti della tabella (1e2)?
Cercando, non ho trovato, come andare ad effettuare questa modifica? Scusami, so che era meglio chiedertelo subito, ma è stata un'evoluzione posticipata alla chiusura del post.
Ti allego il nuovo file, ti chiedo gentilmente dettagli su come hai modificato le tabelle 1e2, così da essere autonomo, semmai ci fosse un nuovo aggiornamento.
GRAZIE!
Ultima modifica fatta da:Canapone; 11/05/17 alle 09:00
Premesso che mi prenderai a, ma me lo merito.
Voglio "estendere" la macro anche alla parte vicina, come faccio ad estenderla?
Io, forse sbaglio, in linea generale avrei bisogno di sapere come funziona un determinato calcolo, poi, cerco di adattarlo a nuove situazioni, a volte ci sono riuscito, ma a volte torno a richiedere modifiche ed integrazioni --> SCUSA!
Ultima modifica fatta da:Canapone; 11/05/17 alle 09:00
ciao
secondo quesito
traduciamo terra terraCodice:Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("K33,K42")) Is Nothing And Target.Value <> "" Then Range("K50") = "" Range("K61") = "" End If If Not Intersect(Target, Range("K50,K61")) Is Nothing And Target.Value <> "" Then Range("K33") = "" Range("K42") = "" End If If Not Intersect(Target, Range("AB33,AB42")) Is Nothing And Target.Value <> "" Then Range("AB50") = "" Range("AB61") = "" End If If Not Intersect(Target, Range("AB50,AB61")) Is Nothing And Target.Value <> "" Then Range("AB33") = "" Range("AB42") = "" End If End Sub
se non scrivo nelle celle K33 K42 non fare niente Not Intersect(Target, Range("K33,K42")) Is Nothing
altrimenti se scrivo nelle celle K33 K42 ma non le lascio vuote Target.Value <> "" ( scrivo, cambio idea le azzero e do invio )
le celle K50 e K61 le svuoti ( cancelli il valore ) Range("K33") = ""
per il primo ti preparo il file
Premesso che è la prima volta che inserisco una macro, ho riscaricato il file che mi avevi allegato, vado in VISUALIZZA - MACRO - VISUALIZZA MACRO - seleziono in basso il file in questione, ma non vedo alcuna macro, mi son perso qualcosa?
Non capisco dove incollare il codice della macro da te scritto..
Ultima modifica fatta da:Canapone; 11/05/17 alle 09:00
ecco il file
del primo quesito
ho sistemato le convalide
e i cerca verticale
un esempio di convalida
in R5
dove paracolpo1 è il nome della formula.Codice:=SE($C5="tabella1";paracolpo1;paracolpo2)
in pratica è più difficile spiegarlo che farlo
vai in FORMULE
DEFINISCI NOME
metti il nome che vuoi in questo caso paracolpo1
RIFERITO A
metti il range che ti interessa
in CONVALIDA
basta mettere =paracolpo1 ed è fatta.
nel tuo caso è legato a due tabelle
perciò in convalida ho scritto
se la cella C5 ( che è la cella che determina il tipo di tabella)
è uguale a tabella1 utilizza la lista di paracolpo1
altrimenti utilizza paracolpo2
perché paracolpo2?
perché in C5 ci sono solo due alternative
o tabella1 o tabella2
e una esclude l'altra.
Ciao
trovi il codice qui
SVILUPPO
VISUAL BASIC
doppio click sul Foglio2(Foglio1)
ti si apre la pagina dove è inserito
altrimenti
Alt F11
si apre l'editor vba e stessa procedura
copia incolla il codice
( chiaro che il vecchio va eliminato o sovrascritto)
Ho visto un miglioramento nella formula! OTTIMO!
Si, effettivamente, sembrerebbe più facile farlo che spiegarlo..
Provo da solo a rifare un altro "esercizio" e vediamo come va!
GRAZIE. ancora!
Ultima modifica fatta da:Canapone; 11/05/17 alle 09:01
ciao
ora parliamo del caso
2a. Linee Grandi Orizzontali
forse ho capito cosa vuoi fare
ma i numeri che trovo sul file sono frutto di formule?
xs 75
ys 700
eccetera
ho una mezza idea di come fare ma mi serve sapere
se nelle celle ci vanno calcoli e quali
nb
per favore non riscrivere sempre le mie risposte
altrimenti andiamo a compilare un'enciclopedia
ferma tutto le ho trovate
bene ho capito di non avere capito
fammi un favore crea due blocchi sul foglio
di come esattamente deve risultare il marchingegno
tra il disegno è il foglio
non mi sembra ci sia corrispondenza
o almeno io non la vedo
Intanto grazie!
Fino a domenica pomeriggio non potrò darti il file aggiornato cone mi hai chiesto, sono senza internet..
Intanto ti anticipo che:
1) il riferimento cartesiano ha origine nel punto più in basso e a sinistra nel disegno (estremo sinistro della prima Linea Piccola Orizzontale);
2) Il primo blocco "giallo" rappresentano le 7 linee parallele in verticale da sinistra e così via..
2) Il primo blocco "azzurro" rappesenta la prima riga verticale da sinistra e così via..
3) Il primo blocco "fucsia" rappresenta la prima linea piccola orizzontale (posizionata nell'origine) e così via..
4) 75=G/2
5) TUTTE le coordinate dipendono dalla matrice in akto a sinistra e dalla colonna (nel file che ti caricheró sarà una matrice) denominata "Fiancata".
Ho aggiornato il file migliorandolo.. domenica te lo carico..
Ma numericamente le coordinate sono giuste, rappresentano le linee che creano il disegno che ti ho caricato.
Caricato file aggiornato.
Solo la parte evidenziata rappresenta i blocchi di coordinate, sotto (da formula) si evince che ogni blocco rappresenta il pezzettino che ti ho descritto.
Ecco... questo potrebbe aiutarti...
Condividi nei tuoi social!