Stellar Blade Un'esclusiva PS5 che sta facendo discutere per l'eccessiva bellezza della protagonista. Vieni a parlarne su Award & Oscar!
 
Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Modifica dati da form

Ultimo Aggiornamento: 04/08/2023 15:03
Post: 31
Registrato il: 17/01/2019
Città: MILAZZO
Età: 24
Utente Junior
Foglio di lavoro di Microsoft Excel 97-2003
OFFLINE
02/08/2023 16:57

Buonasera a tutti, non riesco a finalizzare il codice di modifica dati su foglio non attivo, sono riuscito ha richiamare i dati e compilare la form dalla combo, xò non riesco ad aggiungerli o modificarli. il lavoro è in fase sperimentale, quindi se ci sono errori chiedo scusa.
gentilmente qualcuno mi può aiutare? grazie in anticipo
il file è su excel2016,
nella form di modifica ancora devo formattare i vari text.
allego file
Post: 7.329
Registrato il: 14/11/2004
Utente Master
Office 2019
OFFLINE
03/08/2023 08:40

Ciao ti ho aggiustato il file, ma putroppo io non riesco a fare il codice con i nomi degli oggetti modificati, visto che era poco codice e non implicava altri dati ho preferito cancellare tutto il tuo codice e scriverlo daccapo.

con due righe di codice pulisco tutti i dati con il cambiamento dei nomi alle textbox dovevo richiamarle una alla volta ogni volta che devo pulirle.

Per il riferimento alle TextBox sull'userform sono messe in ordine Crescente quindi basta contarle per sapere di quale TextBox si tratta

invece di un ciclo di ricerca per probabili doppioni, ho preferita farla sull'indice del Combobox cosi elimina il problema dei doppioni

vedi se riesci a comprendere, ho messo anche delle note vicino al codice per comprendere cosa fa ma maggiormente per la scrittura sul foglio perche altrimenti i dati non hanno il formato giusto.

allego il file.

Ciao By Sal (8-D
[Modificato da by sal 03/08/2023 09:12]
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 31
Registrato il: 17/01/2019
Città: MILAZZO
Età: 24
Utente Junior
Foglio di lavoro di Microsoft Excel 97-2003
OFFLINE
03/08/2023 12:49

Grazie tanto by sal, appena torno do un occhiata
[Modificato da Testa che fischia 03/08/2023 12:50]
Post: 32
Registrato il: 17/01/2019
Città: MILAZZO
Età: 24
Utente Junior
Foglio di lavoro di Microsoft Excel 97-2003
OFFLINE
03/08/2023 17:03

Test effettuato!! alla grande!! :D
Però mentre leggevo i codici, ho notato che le variabili (dim) non sono definite, è normale?
E poi un altra cosa che ho notato apparte che mi hai sistemato tutto la form e per questo ti ringrazio tantissimo, che appena lanci la form di modifica si posiziona sul foglio "elenco", e questo era il mio problema più grosso. non si può evitare?

grazie ancora per l'aiuto
Post: 7.330
Registrato il: 14/11/2004
Utente Master
Office 2019
OFFLINE
03/08/2023 18:58

Ciao, le variabili Dim possono anche non essere definite, in quanto Excel le adatta in automatico al tipo di dato che viene inserito, per la verità è Buona norma definirle, anche per un funzionamento più fluido, una volta ed anche adesso come ho detto, era Buona norma definirle perche ogni variabile definita occupa un certo numero di Bit, quella non definita occupa più Bit delle altre, prima ci si teneva molto a queste cose perche le memorie Ram non erano molto grandi, e si cercava di risparmiare ogni Bit, ma adesso che parliamo di GigaBit, la cosa acquista minore importanza tranne se poi le variabili sono migliaia allora la cosa, si che diventa di un certo peso.

per il foglio Ho pensato che il foglio "Elenco" fosse il principale, a questo punto non so quanti fogli contiene il tuo file, al momento solo due vedo, ma puoi fare una gestione dei fogli io uso questo metodo, come hai visto ho dichiarato una variabile privata nel modulo del form, devi toglierla e dichiarare 2 variabili pubbliche nel "Modulo1" e li che vanno messe tutte quelle pubbliche perche è il primo modulo che legge il VBA.

quindi sotto Option Explicit scrivi

Public Sh1 as Worksheet, Sh2 as Worksheet

Sub SetFG()
Set Sh1 = Worksheets("Elenco")
Set Sh2 = WorkSheets("Stampa A3")
End Sub


come vedi adesso le ho definite in quanto sono variabili oggetto, ho anche visto che ce un altro foglio nascosto per le quote di iscrizioni, basta aggiungere in "Sh3" per il nuovo foglio.

a questo punto quando lanci la macro per aprire il form in Userform_Activate

Private Sub UserForm_Activate()
Dim x

SetFG
Sh1.Activate



all'apertura del Form viene lanciata la macro "SetFG" ed avrai disponibili i fogli, con sh1.Activate ti posizioni sul Foglio1 se scrivi Sh2.activate il form viene visualizzato nel foglio2

però questo comporta che devi stare attento quando prendi o scrivi dati con Cells o Range gli devi dare il foglio giusto perche altrimenti il form che hai posizionato sul foglio2 farà riferimento al foglio2 e non al foglio1 dove sono i dati, ecco il motivo dell'uso di With...End With, ma puoi farlo anche singolarmente nel senso che devi copiare un dato da A1 del foglio1 ad A1 del foglio2, quindi scrivi

Sh1.range("A1"). copy Sh2.Range("A1")


con questo metodo puoi copiare o scrivere dove vuoi senza stare a scrivere come di norma

Sheets("Elenco").range("A1").copy Sheets("Stampa A3").Range("A1")


spero di essermi spiegato
Se non ricordi più quale variabile hai assegnato al foglio, a volte quando ne sono molti uno non si ricorda più e può commettere l'errore di prendere un foglio per un altro, basta che vai all'inizio del Modulo1 e ti leggi i vari nomi assegnati

Ciao By Sal (8-D
[Modificato da by sal 03/08/2023 19:13]
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 33
Registrato il: 17/01/2019
Città: MILAZZO
Età: 24
Utente Junior
Foglio di lavoro di Microsoft Excel 97-2003
OFFLINE
04/08/2023 15:03

ciao by sal, sei stato chiarissimo, adesso sta a me metterle in pratica.
adesso dammi qualche giorno per aggiornare il file e testare tutto, vediamo cosa riesco a fare. grazie della tua disponibilità
alla prossima :D🙋‍♂️
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 21:16. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com