Pagina precedente | 1 2 | Pagina successiva
Facebook  

Scrivere in posizioni precise all'interno di una cella

Ultimo Aggiornamento: 16/08/2017 19.28
Autore
Stampa | Notifica email    
Post: 100
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
06/08/2017 18.49

Buongiorno a tutti,
nell'esempio che allego, nella cella unita gialla, ho scritto digitando degli spazi tra la prima e la seconda e tra la seconda e terza parola.
In questo modo, Fiore inizia in posizione 1, Frutto inizia in posizione
34 e Foglia in posizione 66 (se non sbaglio contare).
E' possibile bloccare questa "formattazione" in più celle identiche, in modo che se dovessi scrivere parole più lunghe o più corte, queste inizino sempre nelle stesse posizioni 1, 34 e 66?
Mille grazie e saluti,
Piero.
excel 2010
come scrivere un criterio per un filtroscrivere08/08/2017 10.50
Per una palla in buca!Ipercaforumuna08/08/2017 13.37 by pliskiss
Colorare cella se contiene data antecedente ad oggi ed un'altra cella è vuota. si può?cella28/07/2017 02.13 by federico460
Post: 1.525
Registrato il: 06/04/2013
Città: ROMA
Età: 69
Utente Veteran
2010
OFFLINE
06/08/2017 19.00

ciao
perché non utilizzare tre celle ?, il problema non si porrebbe.

saluti



Domenico
Win 10 - Excel 2010
(ben difficilmente inserisco la gestione degli errori nelle macro che propongo, lasciando l'incarico all'utente)
Post: 3.926
Registrato il: 13/03/2012
Città: LIVORNO
Età: 72
Utente Master
2010
OFFLINE
06/08/2017 19.12

a cosa serve ? occorre poi un carattere a larghezza fissa.
la domanda mi ricorda il Fortran

----------
Win 8 - Excel 2010
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Post: 100
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
06/08/2017 19.47

Il problema è che con più di una cella, i menu a tendina non funzionano.
Io ho 6 celle con caratteristiche di determinati articoli, e mi devo portare dietro tutte le 6 caratteristiche. Se avessi una sola cella, nel scegliere dal menu a tendina, vedrei subito tutte le specifiche.
Con menu a tendina concatenati. indice/confronta ecc ecc, io sceglio l'articolo, la prima e la seconda specifica, ma non oltre. Per cui devo effettuare una scelta e se non va bene farne una seconda e così via.
Mi servirebbe una sola cella, dove posso vedere subito, prima della conferma, tutte le specifiche, ma dove devo anche poter scrivere con un certo ordine.
Cosa intendi per un carattere a larghezza fissa? Che una i occupi uno spazio identico a una m? In passato io usavo (altri problemi) mi pare Courier New per avere la medesima larghezza in tutti i caratteri.
Grazie comunque per le risposte così veloci.
excel 2010
Post: 1.074
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
06/08/2017 20.00

ciao a tutti

non sò se ho capito,
ma sul foglio interessato, potresti provare con una casella combinata (activeX)

con le seguenti proprietà:

ColumnCount: 3

ListFillRange: tuo range sorgente dati

Ciao
Frank

Ps.
Consiglio:
evita per quanto possibile le celle unite, c'è sempre una alternativa [SM=g27811]
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 101
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
06/08/2017 20.14

Tanimon grazie per aver risposto.
Concordo sul cercare di evitare celle unite.
Purtroppo quello che mi suggerisci va decisamente oltre le mie capacità. Io cerco di arrangiarmi in qualche modo con le formule e non riesco a dedicarmi come vorrei al VBA. Spero nelle ferie.
Hai tempo di spiegarmi un pochino?
excel 2010
Post: 1.075
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
06/08/2017 20.27

ho 2007 e non conosco 2010, ma non credo ci siano troppe differenze:

dal foglio interessato,


menu Sviluppo
(se non disponibile in rete trovi sicuramente come poterlo utilizzare)

menu Sviluppo > Inserisci

Iserisci > Casella Combinata activeX
(nella parte bassa della finestra che si è aperta)

una volta selezionata,
disegnarla con il mouse sul foglio.

dopo aver selezionato la casella combinata appena disegnata,

tasto destro > proprietà;

aggiorna le proprietà dette nel post precedente

E' più facile farlo che dirlo/scriverlo
[SM=x423029] [SM=x423037] [SM=x423038]

[Modificato da tanimon 06/08/2017 20.29]
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 102
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
06/08/2017 20.30

Ok, mille grazie.
Ci provo
excel 2010
Post: 1.076
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
06/08/2017 20.35

Re:
Ovviamente,
risolvi solo la richiesta seguente

picavi, 8/6/2017 7:47 PM:


Mi servirebbe una sola cella, dove posso vedere subito, prima della conferma, tutte le specifiche.




ma è un primo passo,
poi si vede il seguente..........
[Modificato da tanimon 06/08/2017 20.36]
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 1.526
Registrato il: 06/04/2013
Città: ROMA
Età: 69
Utente Veteran
2010
OFFLINE
07/08/2017 09.47

Ciao
prima leggi con attenzione quanto scritto da Tanimon (saluti).

Resto comunque con la curiosità e, prima di fornirti una soluzione (poche righe di codice sull'evento change del foglio mirato alle celle interessate)che comunque comporta l'uso obbligatorio di un carattere a larghezza fissa (tipo Currier), ti domando di nuovo perché non vanno bene tre celle e a cosa ti serve questa cella unita con tale modalità di formattazione.
Potrebbe esserci un'altra soluzione per ovviare a questo.

Comunque (per la macro) dovranno essere "singole" parole più o meno lunghe.

saluti



Domenico
Win 10 - Excel 2010
(ben difficilmente inserisco la gestione degli errori nelle macro che propongo, lasciando l'incarico all'utente)
Post: 103
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
12/08/2017 21.05

Ciao a tutti,

chiedo scusa per non essermi fatto vivo prima, ma per lavoro sono assente tutta la settimana e solo oggi pomeriggio ho potuto tornare sull'argomento.
Ricapitolando, avrei bisogno di un menu a tendina che:
- prelevi da un elenco "largo" 7 celle, "fornitore" più 6 specifiche
(se necessario ogni singola cella può essere singola o derivante da
unione,)e
- riporti i dati in 7 celle (in questo caso però le celle sono
obbligatoriamente delle unioni come nel foglio "scheda"
dell'esempio).
Sarebbe importante, nel momento in cui si attiva il menu a tendina, poter vedere e quindi selezionare immediatamente tutte le 7 celle (fornitore più le 6 specifiche). Se si deve scegliere una specifica dopo l'altra, è sempre possibile l'errore.
Con convalida dati ecc. non sono riuscito, e inoltre oggi ho provato a unire le 7 scelte in una unica cella, distribuendo i dati manualmente (dodo con questo forse sono riuscito a chiarirti perchè mi serviva una formattazione automatica).
Ma anche così non funziona. Probabilmente activeX suggerito da Tanimon (mille grazie) è la soluzione giusta, ma io mi sono perso e non riesco a metterlo in pratica.
Avete suggerimenti usando formule? Tanimon avresti 5 min per applicare activeX nell'esempio che allego, così da poter vedere?
Ciao e di nuovo mille grazie a tutti, Piero.
[Modificato da picavi 12/08/2017 21.25]
excel 2010
Post: 1.080
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
12/08/2017 23.08

ciao,
ho visionato il tuo file e siccome ti era stato sconsigliato,
lo hai lasciato zeppo di celle unite [SM=x423043]

Non contento,

hai nascosto le formule nella barra.........

ed hai strutturato il foglio in modo tale di non potere
lavorare sulla larghezza delle colonne mettendo in verticale dati di natura diversa.............

Mi è toccato crearmelo il tuo file.
Grazie
[SM=x423032]

Te lo allego,
dacci un'occhiata e se è quello che cerchi adegua il tuo.


Ciao
Frank
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 104
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
13/08/2017 00.28

Ciao Tanimon,
grazie per il lavoro fatto.
Ma come ho fatto a nascondere le formule nella barra? Ho solo creato e nominato gli elenchi e poi convalida dati-elenco ecc., creando i menu a tendina.
Per le celle unite, sono in una situazione obbligata, come ho scritto nel mio messaggio precedente "- riporti i dati in 7 celle (in questo caso però le celle sono obbligatoriamente delle unioni come nel foglio "scheda" dell'esempio)"
E questo perchè si tratta di una parte di un file molto vasto.
Funzionerebbe ugualmente celle unite o sai già che è una strada non percorribile?
Mi sembra di capire che tu abbia creato una macro e non hai utilizzato activeX, giusto?
Domani farò qualche prova per trasferire questo sistema nel file originale.
Ti farò sapere.
Per ora mille grazie.
Ciao, Piero
excel 2010
Post: 1.081
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
13/08/2017 01.15

ciao,
nel file allegato, troverai un altro risultato:

NON sono celle unite!

una volta effettuata la selezione dalla ComboBOX,
nella cella in colonna A trovi concatenate le voci della ComboBox.

Per una grafica ottimale,
il numero di spazi tra una parola e l'altra dipende dalla larghezza
delle colonne del tuo file e pertanto lascio a te il compito di
ottimizzarlo.


Ho utilizzato una ComboBox Controllo ActiveX, alla quale ho impostato le proprietà di cui al mio post #5,
ed ho inserito alcune istruzioni in un paio di suoi Eventi.

per vedere queste istruzioni,
dal foglio premi ALT + PF 11

NON utilizzerei celle unite per i range su cui ho necessita di intervenire per aggiornamenti MAI ed in nessun caso,
ma lo  farei SOLO per celle i cui valori non DEVONO/POSSONO variare. 




Ciao
Frank
[Modificato da tanimon 13/08/2017 01.33]
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 3.929
Registrato il: 13/03/2012
Città: LIVORNO
Età: 72
Utente Master
2010
OFFLINE
13/08/2017 06.16

Complimenti Tanimon per l'ottimo lavoro, con conoscevo la possibilità del multicolumn, mi sono permesso di fare qualche modifica al codice per inserire i dati direttamente nelle varie celle del foglio1
Private Sub ComboBox1_Click()
Dim ur As Long
ur = Sheets("Foglio1").Range("a" & Rows.Count).End(xlUp).Row + 1
Dim area As Range
Set area = Range("a" & ur)
For i = 0 To 6
  area = area & ComboBox1.Column(i) & " "
Next
area.TextToColumns Destination:=area, DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
        Array(7, 1)), TrailingMinusNumbers:=True
  
Range("a3").Activate
End Sub
[Modificato da patel45 13/08/2017 06.23]

----------
Win 8 - Excel 2010
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Post: 1.082
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
13/08/2017 08.50

Re:
Ciao Patel,
grazie per i complimenti  

il Testo in colonne è una buona soluzione in alternativa all'imputare
colonna per colonna i valori della ComboBox nelle colonne del foglio,  

purtroppo mi sà che ti è scappato quello che chiede Picavi,
che diciamo, è vincolante per MOTIVI PERSONALI.....


picavi, 13/08/2017 00.28:


Per le celle unite, sono in una situazione obbligata, come ho scritto nel mio messaggio precedente "- riporti i dati in 7 celle (in questo caso però le celle sono obbligatoriamente delle unioni come nel foglio "scheda" dell'esempio)"
E questo perchè si tratta di una parte di un file molto vasto.
Ciao, Piero



Se dai un'occhiata al suo ultimo file,
ti renderai conto che quanto ho evidenziato dal suo post è in netto contrasto:

dal suo file,
io ho capito che vuole avere la possibilità di visionare le colonne di dati da selezionare in unica tendina,
di cui i valori devono essere scritti in UNICA cella, ma spaziati come da larghezza delle colonne per un fatto grafico/estetico.

Ma forse ha cambiato idea e sarebbe stato meglio che ce lo dicesse.

Si potrebbero fare fare conti su conti,
contare la lungheza totale della combo, delle singole parole, e con Mid(ComboBox) riempire la cella...............

ma non ho tempo e voglia......  

Vediamo che dice Picavi


Ciao e buona giornata
Frank
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 1.539
Registrato il: 06/04/2013
Città: ROMA
Età: 69
Utente Veteran
2010
OFFLINE
13/08/2017 12.20

ciao a tutti
questo quanto ho capito:

picavi vuole selezionare uno dei fornitori presenti nel foglio DBASE con la possibilità di vedere nella combo le 7 colonne di ciascun fornitore, e questo è stato risolto dalla combo di tanimon.

Poi però ho capito che lui ha l'esigenza di trascrivere i valori scelti nel foglio SCHEDA, rispettando alcune celle unite e che la sua richiesta di "tutto in una cella rispettando gli spazi" altro non era che un escamotage per avere incolonnati i valori.

Quindi sfruttando la cbo di cui sopra, è possibile inserire nelle celle volute (anche se unite) i vari valori.

Nell'allegato, la cbo viene caricata dinamicamente ogni volta che in DBASE si aggiunge un fornitore, fruttando l'evento Activate di SCHEDA.
Pertanto ogni volta che si aggiungerà un nominativo in DBASE questo verrà riportato nella combo.

Nota: si sarebbe potuto creare un nome dinamico per i fornitori in DBASE, ed assegnare il relativo valore alla cbo, ma questo avrebbe comportato problemi all'evento click della cbo, pertanto ho preferito alimentare la cbo con l'union dei 7 range del foglio DBASE (vedi macro foglio2).
Sull'open del documento viene eseguito l'evento activate del foglio SCHEDA.

Mancano tutte le dim...mettile tu....sempre che sia quello che volevi.

saluti



[Modificato da dodo47 13/08/2017 12.43]
Domenico
Win 10 - Excel 2010
(ben difficilmente inserisco la gestione degli errori nelle macro che propongo, lasciando l'incarico all'utente)
Post: 1.083
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
13/08/2017 13.47

Ciao Domenico,
sicuramente il tuo file è meglio rifinito del mio [SM=g27811]

Inizialmente anch'io avevo predisposto l'aggiornamento
delle colonne del foglio SCHEDA uguali alle colonne della combo,
ma l'insistenza di Picavi sul fatto che la riga da compilare
avesse TUTTE le "celle unite" come nel suo file di esempio al post #11,
mi ha "spiazzato".

Non ho pensato di unire le celle per "gruppi di colonne"
ed hai risolto la tabulazione
[SM=x423047]

Speriamo sia quello che cercava

Edit:
nel caso,
bisogna riconoscere che risolveva anche la soluzione di Testo in colonne, proposta da Patel


ciao
Frank
[Modificato da tanimon 13/08/2017 14.10]
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 1.540
Registrato il: 06/04/2013
Città: ROMA
Età: 69
Utente Veteran
2010
OFFLINE
13/08/2017 16.20

ciao
che dire, io l'ho interpretata così...

Si, certo, anche l'impostazione di Patel andrebbe bene in questo caso.

cari saluti


Domenico
Win 10 - Excel 2010
(ben difficilmente inserisco la gestione degli errori nelle macro che propongo, lasciando l'incarico all'utente)
Post: 105
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
13/08/2017 17.40

Ciao a tutti,

in effetti l'interpretazione di dodo è esatta. Io sono vincolato a usare, come destinazione, delle celle unite, parte di un file esistente, molto vasto e praticamente non modificabile sotto questo aspetto.
Non ho cambiato idea, ma nella mia scarsa conoscenza delle formule di excel e totale ignoranza del vba, strada facendo ho pensato prima a un semplice menu a tendina (ma non funziona con celle unite), poi a menu a tendina concatenati (ma, nel mio caso, di fatto inapplicabili).
Ho provato con 7 menu a tendina indipendenti, ben conscio che in ambiente lavorativo avrebbe lasciato grandi possibilità di errori, soluzione che comunque non funziona con celle unite.
Ho provato con una unica macrocella unita, che non ha funzionato, e che presenta il problema di allineare in verticale i vari dati.
Poi è arrivata la cavalleria (voi) che ha risolto il problema.
Proverò a fondo e poi trasferirò la soluzione nel file originale.
Mi sono ripromesso, in queste due settimane di ferie, di iniziare a studiarmi il vba. Ho già scaricato un tutorial di una certa Alexandra,
speriamo in bene.
Che dire, posso solo ringraziare tutti voi, sempre molto disponibili e veloci. Vorrei veramente anch'io dare un aiuto e non solo sempre chiedere.
Grazie ancora, a tutti.
Ciao,Piero
excel 2010
Post: 106
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
14/08/2017 20.12


Come faccio a dire al combobox dove scrivere?
Ho inserito nel file originale (ne allego uno stralcio) i codici e il combobox, ma non riesco a farlo scrivere.
Dov'è l'errore?
excel 2010
Post: 1.085
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
14/08/2017 20.48

non sò che dire,
a me funziona

Ho guardato il file e mi sembra tu abbia incollato bene il codice.




Ciao
Frank
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 107
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
14/08/2017 20.52

E' vero, ora funziona anche a me.
Meglio cosi.
Ciao Tanimon.
excel 2010
Post: 1.088
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
14/08/2017 21.23

c'è solo una correzione da fare,
ma quando la riscontrerai,
sono certo che sarà alla tua portata.


ciao
Frank
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 108
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
14/08/2017 21.33

Ho modificato "Range (A1) in (A30), così non mi rimbalza ogni volta in alto a sinistra, poi ho modificato

Uni0n(wk.Range("A2:A" & ur), wk.Range("B2:B" & ur), _
wk.Range("C2:C" & ur), wk.Range("D2:D" & ur), wk.Range("E2:E" & ur), _
wk.Range("F2:F" & ur), wk.Range("G2:G" & ur)).Value

in A3, B3 ecc per non includere anche la riga di intestazione (fornitore ecc).
Inoltre ho dovuto modificare
Cells(ur, 1) = ComboBox1.Column(0)
Cells(ur, 3) = ComboBox1.Column(1)
Cells(ur, 6) = ComboBox1.Column(2)
Cells(ur, 7) = ComboBox1.Column(3)
Cells(ur, 8) = ComboBox1.Column(4)
Cells(ur, 9) = ComboBox1.Column(5)
Cells(ur, 10) = ComboBox1.Column(6)
perche ho una cella unita da 3 invece che da 4.
Altro non mi ricordo.
Però, dove viene detto al combobox dove deve scrivere?


excel 2010
Post: 1.089
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
14/08/2017 21.44

nelle itruzioni del suo evento ComboBox1_Click

se hai fatto o fai delle modifiche,
cerca PRIMA di capirne le conseguenze....


Per poterlo fare, devi almeno sapere...... leggere il codice

[SM=x423018]
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 109
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
14/08/2017 22.00

Beh, con un poco di attenzione si intuisce che inizia a leggere in A2, A3 ecc, poi scrive nelle colonne 1,3,6 ecc..
Per il Range A1 ==> A30 qui non ho capito bene, ma mi mandava in A1 e c'era solo un A1; con la modifica è andato tutto a posto.
Non riesco però a trovare il nesso che _Click() indirizza proprio in quella cella e non in una piu sotto o sopra, ad esempio. Qui bisogna solo cocnoscere il linguaggio di programmazione.
Se riuscirò, nei giorni prossimi inizierò con vba.
Ciao tanimon, e grazie per il supporto.
excel 2010
Post: 1.090
Registrato il: 27/06/2011
Utente Veteran
excel 2007
OFFLINE
14/08/2017 22.15

Re:
picavi, 8/14/2017 10:00 PM:


Non riesco però a trovare il nesso che _Click() indirizza proprio in quella cella e non in una piu sotto o sopra, ad esempio.




al verificarsi dell'Evento click sulla combo (quando clicchi sulla combo),

esegue le istruzioni all'interno dell'Evento click.

Sono le istruzioni ad effetture le modifiche al file.


[SM=g27811]
Excel 2007

1 - per sapere come aggiornare la tua firma clicca qui
2 per cortesia, leggi questa e questa discussione.
3 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
4 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 110
Registrato il: 13/02/2005
Utente Junior
office 2010
ONLINE
15/08/2017 11.54

Ciao tanimon,

ho inserito i codici nel file definitivo, però il combobox
non scrive nella riga 32, ma nella 269.
Credo di capire che sia dovuto alla ultima riga utilizzata
in questo foglio. Però, non conoscendo il vba, non ne esco.
E' corretta la mia interpretazione?
Cosa devo fare per risolvere?

Ciao, Piero
(e buon ferragosto)
excel 2010
Post: 1.544
Registrato il: 06/04/2013
Città: ROMA
Età: 69
Utente Veteran
2010
OFFLINE
15/08/2017 12.00

Piero
come suggerito, se non ti sforzi nel capire le righe delle istruzioni, non ne uscirai mai.
Nella Private Sub ComboBox1_Click(), l'istruzione:

ur = Range("A" & Rows.Count).End(xlUp).Row + 1

individua la prima riga libera sulla quale scrivere, il resto (da aggiustare) non fa altro che copiare i dati della cbo (che ti ricordo partono da 0=1^ colonna, 1=2^ colonna....) nelle varie colonne.

Ora se devi riportare anche le "note" di col. H di "DB Bottoni", devi aggiungere tale colonna (H) al caricamento della combobox1:
....
.List = Uni0n(wk.Range("A3:A" & ur), wk.Range("B3:B" & ur), _
wk.Range("C3:C" & ur), wk.Range("D3:D" & ur), wk.Range("E3:E" & ur), _
wk.Range("F3:F" & ur), wk.Range("G3:G" & ur), wk.Range("H3:H" & ur)).Value
....

Le note non le vedrai nella combobox1, ma non credo sia un problema. Se invece le vuoi vedere anche nella combobox1, devi modificare nelle sue proprietà la voce ColumnCount portandola da 7 a 8.

Mi auguro inoltre che sotto la tabella "Accessori: bottoni" non vi siano altre tabelle, altrimenti c'è da modificare l'individuazione della riga su cui scrivere (ur) che prevede appunto che la suddetta tabella sia l'ultima del foglio, in quanto così come è impostata quell'istruzione cerca la prima riga libera della col. A di Scheda Consumi.
Quindi, se per ipotesi l'ultima riga scritta di Scheda Consumi è la A100, la routine scriverà in A101.

Spero di esser stato chiaro.

saluti


[Modificato da dodo47 15/08/2017 12.02]
Domenico
Win 10 - Excel 2010
(ben difficilmente inserisco la gestione degli errori nelle macro che propongo, lasciando l'incarico all'utente)
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 2 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Home Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 21.29. Versione: Stampabile | Mobile | Regolamento e Privacy
FreeForumZone [v.4.4.2] - Copyright © 2000-2017 FFZ srl - www.freeforumzone.com