Condividi:        

disegni su excel

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

disegni su excel

Postdi _Bebe_ » 26/08/10 17:37

Ciao a tutti,
ho bisogno di un aiuto..
devo disegnare su excel la pianta di un edificio in muratura. Nello stesso foglio di calcolo dovrei verificare numericamente se ogni muro resiste ad un eventuale sisma. La domanda è: come faccio a far si che un muro disegnato si colori di rosso se il valore di una cella supera un certo numero? Come vanno disegnati i muri? Facendo prima la linea e poi utilizzando il comando "Modifica punti"??
Grazie in anticipo a chiunque riesca ad aiutarmi!!!!
_Bebe_
Newbie
 
Post: 3
Iscritto il: 26/08/10 17:28

Sponsor
 

Re: disegni su excel

Postdi Anthony47 » 27/08/10 02:09

Ciao _Bebe_ e benvenuto nel forum.
Per disegnare un muro puoi usare la forma "linea", disponibile nella barra degli strumenti Disegno; poi con una macro assegnerai il colore usando una istruzione tipo
Codice: Seleziona tutto
    ActiveSheet.Shapes("Line 1").Line.ForeColor.SchemeColor = 10
(per ottenere il corretto indice di colore o procedi per tentativi o registri una macro mentre assegni a mano a una linea vari colori e verifichi quali indici sono stati usati)

In alternativa potresti usare direttamente lo sfondo della cella per rappresenare il muro, previo opportuno resizing delle righe e delle colonne; in questo modo teoricamente oltre che con una macro potresti lavorare anche con la formattazione condizionale.

Spero che questi spunti ti siano di qualche utilita'.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: disegni su excel

Postdi maxmula » 27/08/10 09:15

Come diceva Anthony47, puoi usare gli oggetti grafici (non solo linee, ma anche forme, che consentono alcuni effetti.
Ti avviso però che Excel nasce come foglio di calcolo e non è certo un'applicazione specifica per l'ingegneria civile.

Se quello che ti serve è solo uno schema di base degli edifici (senza la "complicazione" della rappresentazione in scala) puoi provare nel modo suggerito, assegnando ad ogni "parete" (=> oggetto grafico) un identificativo che corrisponde alla riga di una tabella e colorandolo in base al valore delle celle.
Attento però: se l'edificio è piuttosto complesso,potresti ficcarti in un bel casin... -ehm- ginepraio :P con la gestione delle associazioni forma-riga dati...

Usando gli oggetti grafici non puoi creare una forma complessa (ad esempio una linea spezzata) e poi assegnare colori diversi ad ogni suo elemento: crei un oggetto, ed a quello assegni le proprietà.
Il consiglio è, quindi, di usare un singolo oggetto per ogni parete/parte di muro che desideri analizzare.
L'idea (bacata, forse) sarebbe di disegnare la piantina dell'edificio in un'apposito foglio vuoto, modificando le linee a piacimento, quindi scrivere una routine da lanciare alla bisogna) che "scorre" gli oggetti nel foglio uno ad uno e chiede all'utente di indicare qual è la riga di dati da associare nella tabella coi risultati dei calcoli...

Per quanto riguarda il colore, dovresti poterlo assegnare usando la funzione RGB
Codice: Seleziona tutto
ActiveSheet.Shapes("Line 1").Line.ForeColor.SchemeColor = RGB (R,G,B)


Dove R, G e B sono le componenti di rosso, verde e blu (valori tipo Int, da 0 a 255)

Dico "dovresti poter"... perchè da molto tempo non lavoro con gli oggetti grafici e non ricordo se ci siano dei limiti che ti impediscono di usare questa funzione.
In ogni caso puoi trovare utili informazioni sulle pagine del solito, fulgido :) Chip Pearson:
http://www.cpearson.com/excel/colors.aspx

Spero di esserti stato d'aiuto!

Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: disegni su excel

Postdi _Bebe_ » 27/08/10 15:12

Intanto grazie infinite per le risposte.
Vorrei chiedere un'altra cosa che purtroppo non mi è chiara essendo per me Excel un programma semi-sconosciuto...
Dunque: ho ricalcato la pianta dell'edificio (che avevo in formato dwg) sovrapponendo i rettangoli di excel ai muri: va bene?
Ammesso che sia giusto come faccio esattamente a "scrivere una routine da lanciare alla bisogna) che "scorre" gli oggetti nel foglio uno ad uno e chiede all'utente di indicare qual è la riga di dati da associare nella tabella coi risultati dei calcoli..." quindi ad associare un rettangolo ad una cella?
Non so se sia fattibile spiegarmelo su qsto forum però io ci provo :D
Grazie ancora
Bebe
_Bebe_
Newbie
 
Post: 3
Iscritto il: 26/08/10 17:28

Re: disegni su excel

Postdi maxmula » 27/08/10 16:50

Ed eccoci al punto dolente... :P
Io di solito faccio (facevo) un conteggio degli oggetti ed una "spazzata" con un ciclo For.
Ti ho scritto un breve codice di esempio da inserire nel documento dove hai la piantina: apri Visual Basic Editor (Alt-F11) ed inserisci un nuovo modulo (Inserisci/Modulo), quindi incolla nel modulo vuoto questa routine:

Codice: Seleziona tutto
Sub CONTA_SHAPES()
    Dim QUANTE_FORME As Integer
    Dim LISTA_SHAPES()      'questo sarà l'elenco delle forme presenti
   
    QUANTE_FORME = ActiveSheet.Shapes.Count
        'Questo ci fornisce il numero di forme presenti nel foglio
   
   
    'Una volta noto il numero di forme, provvediamo a ridimensionare l'elenco alla bisogna:
   
    ReDim LISTA_SHAPES(1 To QUANTE_FORME)
        ' (tante righe quante ne servono)
       
   
    For F = 1 To QUANTE_FORME
        LISTA_SHAPES(F) = ActiveSheet.Shapes(F).Name
    Next

    Stop
End Sub



Se esegui passo-passo (F8) puoi vedere il funzionamento del codice:
- se passi il mouse sulle variabili ti viene mostrato il valore attuale;
- per visualizzare il contenuto di LISTA_SHAPES devi cliccare col destro sul nome della variabile LISTA_SHAPES (nel modulo) e selezionare "Aggiungi espressione di controllo" (all'inizio sarà vuota).

Al termine del ciclo For ti troverai un LISTA_SHAPES così "riempita":

    LISTA_SHAPES(1) "Rectangle1"
    LISTA_SHAPES(1) "Rectangle2"
    LISTA_SHAPES(1) "Rectangle3"
    LISTA_SHAPES(1) "Line1"
    LISTA_SHAPES(1) "Rectangle4"
    ...
    ecc.


A questo punto hai in mano la lista delle forme (=> pareti) presenti nel tuo schema.
Per associarle ad una specifica riga del foglio, puoi ad esempio creare una tabella in cui la prima colonna contiene il nome dell'oggetto, la seconda il numero della riga in cui trovare i dati (e magari la terza il colore da assegnare).

Per scrivere i dati nella tabella:
Codice: Seleziona tutto
    RIGA_INIZIO = 1 
        'SUPPONIAMO CHE LA TABELLA INIZI IN CELLA E2 (METTO 1 PER RAGIONI DI "GESTIONE" DEL CICLO SEGUENTE)
   
    COL_INIZIO = 5
   
    For R = 1 To QUANTE_FORME
        Cells(RIGA_INIZIO + R, COL_INIZIO).Formula = LISTA_SHAPES(R)
    Next


Per "lanciare la routine alla bisogna", occorre creare sul foglio un pulsante apposito:
- Menu Visualizza/BArre degli strumenti
- Attiva "Visual Basic" e "Strumenti di controllo"
- Nella barra degli Strumeni di Controllo, seleziona l'icona "Pulsante di comando" (dovrebbe essere la sesta dall'alto/da sinistra);
- vai sul foglio, trascina... ed ecco un pulsante.
- Click Dx sul pulsante; seleziona Proprietà. Da questa finestra puoi modificare tutti i parametri principali del funzionamento.
- Vai sul campo (Name) e modifica l'identificativo corrente (dovrebbe essere CommandButton1) con uno più comprensibile (esempio: AGGIORNA_LISTA_OGGETTI)
- Doppio click sul pulsante: ti trovi di nuovo in VBA Editor.
Nella routine AGGIORNA_LISTA_OGGETTI_Click (in gergo tecnico: "L'evento Click per l'oggetto AGGIORNA_LISTA_OGGETTI") scrivi questo codice:
Codice: Seleziona tutto
   Call CONTA_SHAPES


Per provare il pulsante, torna al foglio dicalcolo, esci dalla modalità di progettazione (click sull'icona con riga e squadra, la prima della barra Strumenti di controllo), ripulisci la tabella co nomi degli oggetti (senza però cancellare le forme) e prova a cliccare il pulsante.

Questa, almeno, è l'idea di base. Poi, lo spazio per le migliorie è piuttosto vasto: dicci tu cosa ti serve fare di preciso... noi siamo qui! ;)


Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: disegni su excel

Postdi Anthony47 » 28/08/10 02:56

Approfondendo un attimo, il mio suggerimento e' di creare un modello matematico della piantina e dei suoi attibuti.
Cioe' crei una tabella con la definizione di ogni linea da tracciare (coordinate, colore e spessore) poi con una macro esegui quel disegno.
Ad esempio:
Immagine
free image upload
PER VEDERE TUTTA L' IMMAGINE: Tasto dx sull' immagine, poi scegli Apri in una nuova finestra.

La tabellina sulla destra, partendo dalla cella GIALLA, definisce il disegno:
-quale e' sullo schermo il "punto zero" rispetto a cui gli altri punti sono dfiniti (100 - 150, nell' esempio)
-ogni riga sottostante la cella gialla definisce una riga; da sx: spessore, ColorIndex, X di inizio, Y di inizio, X di fine, Y di fine
-ragionevolmente la fine di una linea e' l' inizio della successiva
-puoi inserire quante righe=quante linee vuoi
-una cella VUOTA nella colonna della cella gialla identifica la fine della tabella

La cella ARANCIONE contiene la "scala", cioe' di quanto ogni coordinata sara' moltiplicata prima del disegno; la "scala" non altera il "punto zero", che quindi e' assoluto.

Il disegno alla sinistra corrisponde a quanto e' "dichiarato" sulla destra, ed e' stato realizzato con la seguente macro:
Codice: Seleziona tutto
Sub CreaPianta()
'
'Azzera le Linee
On Error Resume Next
For Each Pict In ActiveSheet.Shapes
    If Left(Pict.Name, 4) = "Line" Then Pict.Delete
Next Pict
On Error GoTo 0

'Crea le nuove linee
X0 = Range("zero").Value
Y0 = Range("zero").Offset(0, 1).Value
Magn = Range("scala").Value
Do
I = I + 1
With Range("zero")
If .Offset(I, 0) = "" Then Exit Do
    ActiveSheet.Shapes.AddLine(X0 + .Offset(I, 0) * Magn, Y0 + .Offset(I, 1) * Magn, X0 + .Offset(I, 2) * Magn, Y0 + .Offset(I, 3) * Magn).Select
    Selection.ShapeRange.Line.ForeColor.SchemeColor = .Offset(I, -1)
    Selection.ShapeRange.Line.Weight = .Offset(I, -2)
End With
Loop

End Sub

ATTENZIONE: la macro per cominciare CANCELLA TUTTE LE LINEE presenti sul foglio attivo, prima di creare quelle definite in tabella.
Per usare la macro: Alt-F11 per aprire l' editor delle macro; Menu /Inserisci /Modulo; copi il codice e lo incolli nel frame di dx.
Torni su excel e se vuoi associ quella macro a un pulsante; trovi la forma nella barra degli strumenti Modulo, e durante la sua creazione ti verra' chiesto se vuoi assegnargli una macro; ovviamente gli assegnerai CreaPianta, scegliendola dall' elenco che ti presenta. Volendo usi un pulsante disponibile in Strumenti di controllo come suggerito da max.

Per il corretto funzionamento della macro, la cella gialla nel disegno va nominata "zero" e quella arancione "scala" (selezioni la cella, poi Menu /Inserisci /Nome /Definisci; scrivi il zero o scala secondo il caso, Ok).
Ovviamente puoi inserire la tabella nella posizione che vuoi, purche' la definizione di "zero" sia coerente.

Non e' detto che sui vostri pc i colorindex impostati nella tabella corrispondano ai colori visualizzati sull' immagine.

Ciao a tutti.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: disegni su excel

Postdi maxmula » 30/08/10 09:31

Saggio come sempre il suggerimento di Anthony47.
Credo però che sia piuttosto laborioso per l'utente definire manualmente i singoli punti per poi tracciare il disegno in un secondo tempo (specialmente se si tratta di un programma che verrà poi riutilizzato per diversi progetti).
A mio parere sarebbe più intuitivo dal punto di vista dell'interfaccia utente) partire da uno schema già disegnato a mano e mappare le coordinate dei suoi nodi, nonostante si possano usare soltanto oggetti Linea ("Line"), Spezzata/Disegno a mano libera ("Freeform") e Curva.

Apro a questo punto una digressione (se i Moderatori pensano sia il caso, provvedo ad aprire un nuovo thread):
dal momento che ho trovato quest'argomento molto interessante :) ho iniziato a scrivere una funzione che, dato il nome dell'oggetto, provvede a copiare le coordinate dei punti in un array. Purtroppo mi sono arenato perchè non riesco a leggerle...
Mi spiego meglio con un po' di codice:

Codice: Seleziona tutto
Function MAPPA_SHAPES(NOME_OGGETTO)
    Dim PUNTI()
   
    'ActiveSheet.Shapes("Line 4").Select
   
    Set P = ActiveSheet.Shapes(NOME_OGGETTO) 'Questo per brevità nel digitare il codice :-)
       
        On Error Resume Next               
                                            'Soltanto gli oggetti "disegno a mano libera hanno un elenco dei punti!
                                            ' Oggetti: "validi":
                                            ' - Line
                                            ' - Freeform

            QUANTI_PUNTI = P.Nodes.Count
            ReDim PUNTI(1 To QUANTI_PUNTI, 1 To 2)
   
             '....   

           
           
            MAPPA_SHAPES = PUNTI
        On Error GoTo 0
    Set P = Nothing
End Function


Come operazione preliminare, ho aggiunto un'espressione di controllo sulla variabile P, il che mi permette di avere sott'occhio l'intera "mappatura" dell'oggetto grafico.
Il problema èche P (in questo caso un semplice segmento rettilineo) è così strutturato:
(uso il tag Code per una migliore resa dell'ASCII Art :) )
Codice: Seleziona tutto

P
|
+- ...
...
|
+- Nodes
|  +- Application
|  |  +- ...
|  +- Count
|  +- Creator
|  |- Parent
|  |      +-
|  +- Item 1
|  |      +- ...
|  |      +- Points
|  |            +- Points (1)
|  |                      +- Points (1,1)
|  |                      +- Points (1,2)
|  +- Item 2
|  |          +- Points
|  |             +- Points (1)
|  |                      +- Points (2,1)
|  |                      +- Points (2,2)
|     ecc.


Il problema è questo: come si può fare un ciclo in modo da leggere tutte le coordinate?
Io pensavo a qualcosa del tipo :

Codice: Seleziona tutto
    For Each K in P.Nodes
       PUNTI (K,1) = P.NODES(K).POINTS(1,1)
       PUNTI (K,2) = P.NODES(K).POINTS(1,2)
    Next


Però in questo modo N rimane inesorabilmente vuoto...
Qualcuno saprebbe darmi una dritta?


Ciao,
MAX
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: disegni su excel

Postdi maxmula » 30/08/10 14:20

Ecco risolto :)

Codice: Seleziona tutto
Function MAPPA_SHAPES(NOME_OGGETTO)
    Dim PUNTI()
   
    Set P = ActiveSheet.Shapes(NOME_OGGETTO) 'Questo per brevità nel digitare il codice :-)
        P.Select
        T = P.Type
        On Error GoTo NO_PUNTI     'Soltanto gli oggetti "disegno a mano libera hanno un elenco dei punti!
                                            ' Oggetti: "validi":
                                            ' - Line
                                            ' - Freeform
            QUANTI_PUNTI = P.Nodes.Count
            ReDim PUNTI(1 To QUANTI_PUNTI, 1 To 2)

            For K = 1 To QUANTI_PUNTI
                'Stop
                PT_COORD = P.Nodes(K).Points
                PUNTI(K, 1) = PT_COORD(1, 1)
                PUNTI(K, 2) = PT_COORD(1, 2)
            Next
           
            MAPPA_SHAPES = PUNTI
            GoTo FINE
           
NO_PUNTI:
            MAPPA_SHAPES = Null

FINE:
        On Error GoTo 0
    Set P = Nothing
End Function



Questa funzione può venire richiamata dalla mia "Conta_Shapes", opportunamente modificata:
Codice: Seleziona tutto
Sub conta_shapes()
    Dim QUANTE_FORME As Integer
   
    Dim LISTA_SHAPES()      'questo sarà l'elenco delle forme presenti
   
   
    QUANTE_FORME = ActiveSheet.Shapes.Count
        'Questo ci fornisce il numero di forme presenti nel foglio
   
    'Una volta noto il numero di forme, provvediamo a ridimensionare l'elenco alla bisogna:
   
    ReDim LISTA_SHAPES(1 To QUANTE_FORME)
        ' (tante righe quante servono)

       
    TROVATE = 0
    For F = 1 To QUANTE_FORME
        If ActiveSheet.Shapes(F).Type = msoLine Or ActiveSheet.Shapes(F).Type = msoFreeform Then
            TROVATE = TROVATE + 1
            LISTA_SHAPES(TROVATE) = ActiveSheet.Shapes(F).Name
        End If
    Next

    'Stop
    ReDim Preserve LISTA_SHAPES(1 To TROVATE)
   
    RIGA_INIZIO = 1  'SUPPONIAMO CHE LA TABELLA INIZI IN CELLA E2 (METTO 1 PER RAGIONI DI "GESTIONE" DEL CICLO SEGUENTE)
    COL_INIZIO = 5
   
    For R = 1 To TROVATE
        PUNTI = MAPPA_SHAPES(LISTA_SHAPES(R))
        Cells(RIGA_INIZIO + R, COL_INIZIO).Formula = LISTA_SHAPES(R)
        If IsArray(PUNTI) = True Then
'            Stop
            SPOST = 1      ' questo è un offset che fa in modo di stampare su un medesima riga del foglio
                                  ' di calcolo le coordinate x-y di tutti i punti.
            For X = 1 To UBound(PUNTI, 1)       'Restituisce il numero di righe di PUNTI
                For Q = 1 To UBound(PUNTI, 2)   'Restituisce il numero di colonne di PUNTI
                Cells(RIGA_INIZIO + R, COL_INIZIO + SPOST).Formula = PUNTI(X, Q)
                SPOST = SPOST + 1
                Next
            Next
        End If
    Next
End Sub


Allego un'immagine di esempio in cui ho tracciato un abbozzo di piantina, più alcuni oggetti "estranei". Gli oggetti Linea e Forma a mano libera vengono mappati, tutti gli altri sono ignorati.

Immagine

Agendo poi sui parametri R_INIZIO, COL_INIZIO e SPOST, è possibile posizionare la tabella in modo che ci sia spazio anche per le altre informazioni (Stile della linea, colore, risultati dei calcoli ecc.)
In caso di variazioni al disegno, è sufficiente riposizionare gli oggetti trascinandone i nodi e far girare di nuovo la routine di mappatura per aggiornare le coordinate.


Ciao!
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: disegni su excel

Postdi Anthony47 » 30/08/10 18:25

Eh... l' appetito vien mangiando.

Comunque non so se' e' piu' facile fare su excel un disegno IN SCALA e con una macro ottenerne le coordinate oppure partire da un disegno con le misure o un disegno in scala, definire l' angolo "in alto a sx" come punto "zero", riportare poi le ccordinate cartesiane (misurate col righello) di ogni angolo della costruzione, trascriverle nelle celle excel.

Comunque, vuolendo esplorare la prima via io l' ho fatto cosi':
-disegnare la mappa usando la forma "figura a mano libera" (reperibile nella barra degli strumenti Disegno, voce Forme, categoria Linee)
-disegnare solo linee rette, perche' ottenere le coordinate di una curva a mano libera porta qualche imprecisione.
-assegnare alla forma appena disegnata un nome noto; io l' ho chiamata "pippolo", ma potete usare anche nomi piu' altisonanti, es "mappa villa certosa"
-usare poi le seguenti istruzioni per ottenere le coordinate dei singoli nodi (le curve, che ripeto e' meglio non usare, sono ottenute per interpolazione)

Codice: Seleziona tutto
Sub ReverseMap()
Dim Nodo As ShapeNode
'
Forman = "pippolo"       '<<<
'
For Each Nodo In Sheets("Foglio3").Shapes(Forman).Nodes
    [K10].Offset(i, 0) = Nodo.Points(1, 1)
    [K10].Offset(i, 1) = Nodo.Points(1, 2)
    i = i + 1
Next Nodo

End Sub

Ho usato K10 come origine dell' area di destinazione in modo da poter poi usare la mia macro precedente per riplottare la forma (previa ricostruzione delle coordinate di "fine" di ogni tratta, ovviamente uguali alle coordinate del nodo successivo; oppure previo adattamento della macro per usare le coordinate in verticale e non orizzontale).

In questo modo, nel seguente disegno, ho disegnato la forma in alto (linee nere con sfondo bianco), ho ottenuto le coordinate in K10:L15, e (con scala 2 e "zero" a 50.50, ho disegnato la mappa in rosso.
Immagine
free image upload


Per pura curiosita', ho poi disegnato una mappa con un tratto a mano libera, e il risultato e' stato il seguente:
Immagine
host image

E' evidente come la traduzione di una curva in punti intermedi ha qualche approssimazione grossolana, da cui il suggerimento gia' dato di usare solo sequenze di linee rette.

Ciao a tutti.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: disegni su excel

Postdi Flash30005 » 30/08/10 23:28

Accipicchia!!! :eeh:
Ma state utilizzando excel come un CAD?

Questi sono argomenti da conservare!!! ;)

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: disegni su excel

Postdi maxmula » 31/08/10 08:27

@Flash:
LOL... dovresti vedere cos'ero riuscito a combinare tra il 2001 ed il 2003! :) Prendevo un'immagine bitmap con la cartografia di un'area (urbana, autostrada), poi usavo le coordinate fornite dal GPS per georeferenziare misure di propagazione radio! In un altro caso, invece, usavo le forme per calcolare le distanze tra i vari punti di misura!
Eh, bei tempi, quelli... sempre in giro sulle autostrade, altro che starsene al chiuso a "spippolare" su una tastiera... 8) 8)
[Fine dell'auto-celebrazione :P]

@tutti gli altri:
A questo punto mi sembra importante che sia _Bebe_ a decidere quale soluzione implementare... cercava una strada e gliene abbiamo fornite addirittura due!

Ciao a tutti,
MAx

PS. Comunque credo che questo sia uno dei topic più interessanti degli ultimi, diciamo... 2-3 anni! :)
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: disegni su excel

Postdi _Bebe_ » 31/08/10 15:56

Lieta di aver dato il via ad uno dei topic più interessanti degli ultimi 2-3 anni :) ma Devo ammettere che sono sconvolta nel vedere quello che voi riuscite a fare ed io riesco a stento a capire... ho provato a fare quanto mi avete detto (almeno alcune cose) ma è troppo complicato!!!!!
A questo punto mi sorge una domanda: come si fa ad imparare l'uso dei codici?? intendo come crearli..e comunque è una cosa possibile imparare a fare quanto avete detto in tempi ragionevoli?? Lo chiedo solo perchè il tutto mi serve per la mia tesi di laurea in architettura e non mi rendo conto se è fattibile considerando la mia scarsa abilità in excel!
Proverò comunque a smanettare un pò..non si sa mai..
Grazie ancora di tutto e complimenti per la genialità!!!!! :D
_Bebe_
Newbie
 
Post: 3
Iscritto il: 26/08/10 17:28

Re: disegni su excel

Postdi maxmula » 31/08/10 16:06

Guarda, io ho iniziato così:

Correva l'anno 1997 e si usava Excel 5; VBA era "localizzato" (con i problemi che ben si possono immaginare quando si trattava di usare versioni di excel di lingua diversa). Lanciai il Registratore di Macro ed colorai di giallo 2 celle.
Premuto ALt-F11... ed insieme all'Editor di Macro (Allora si chiamava così) mi si aprì un mondo!

Se hai una minima conoscenza di un linguaggio di programmazione (uno qualunque) non dovresti aver problema ad imparare VBA... e comunque c'è sempre il Forum: chiedere ciò che non si conosce è sempre lecito! ;)


Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: disegni su excel

Postdi Anthony47 » 01/09/10 01:05

Non l' avevo detto esplicitamente, ma il mio secondo messaggio (viewtopic.php?f=26&t=87792#p498950) era anche in risposta a quanto avevi scritto il 27-8 alle 16:12, con le istruzioni per l' inserimento e l' uso della macro.
Credo che quel suggerimento sia il piu' facile da attuare; mentre la tecnica di partire da un disegno penso possa essere una evoluzione successiva, sopratutto se potrai gestire l' input tramite una tavoletta grafica.
Non mi pareva cosi' complicato, si tratta di inserire le coordinate cartesiane dei punti di inizio e fine di ogni muro... ma se hai domande siamo qua (ricorda che una parte cruciale dell' immagine non e' visibile immediatamente, ma se segui le istruzioni date la potrai visualizzare integralmente).

Ti confermo che la registrazione di una macro e' il modo piu' semplice per entrare in contatto col linguaggio vba: Menu /Strumenti /Macro /Registra nuova macro; poi esegui una serie di operazioni a piacere; ferma la registrazione della macro; Alt-F8, seleziona il nome della macro, premi Modifica, ti si apre l' editor delle macro (lo chiamo ancora cosi') dove puoi controllare in quali istruzioni sono state tradotti i tuoi comandi. Ancora oggi il 50% delle mie istruzioni scaturiscono da un "registra nuova macro".

Ti auguro pero' di laurearti prima di imparare a creare quanto ti abbiamo descritto.

Ciao!
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: disegni su excel

Postdi Flash30005 » 01/09/10 01:20

@Bebe
Segui i consigli che ti sono stati dati,
se hai dubbi posta ancora
per il resto...
In bocca al lupo!!!

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-


Torna a Applicazioni Office Windows


Topic correlati a "disegni su excel":


Chi c’è in linea

Visitano il forum: Ricky0185 e 42 ospiti