Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Macro copia valori nella prima riga disponibile

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

Macro copia valori nella prima riga disponibile

Postdi acipriani » 11/04/13 10:00

Piccolo problema al quale giro intorno ma non riesco a risolvere

Ho creato una macro semplice che mi copia dei valori da un form di inserimento ad un foglio dove questi valori sono "spalmati" su una riga, per aggiungere righe successive come indico alla macro di scriverli nella prima riga libera disponibile?? successiva alle altre già scritte??
la macro è questa

Codice: Seleziona tutto
Sub Scrivisutxtcg()
'
' Scrivisutxtcg Macro
'

'
    Sheets("PREOUT").Select
    ActiveCell.FormulaR1C1 = "=CG!Codice_Ospite"
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "=CG!Data_Arrivo_OS"
    Range("C1").Select
    ActiveCell.FormulaR1C1 = "=CG!Cognome_OS"
    Range("D1").Select
    ActiveCell.FormulaR1C1 = "=CG!Nome_OS"
    Range("E1").Select
    ActiveCell.FormulaR1C1 = "=CG!Codice_Sesso_OS"
    Range("F1").Select
    ActiveCell.FormulaR1C1 = "=CG!Data_Nascita_OS"
    Range("G1").Select
    ActiveCell.FormulaR1C1 = "=CG!Codice_Comune_Nascita_OS"
    Range("H1").Select
    ActiveCell.FormulaR1C1 = "=CG!SIGLIA_PROV_OS"
    Range("I1").Select
    ActiveCell.FormulaR1C1 = "=CG!Codice_stato_Nascita_OS"
    Range("J1").Select
    ActiveCell.FormulaR1C1 = "=CG!R10C12"
    Range("K1").Select
    ActiveCell.FormulaR1C1 = "=CG!Codice_Comune_Res_OS"
    Range("L1").Select
    ActiveCell.FormulaR1C1 = "=CG!Sigla_Prov_OS"
    Range("M1").Select
    ActiveCell.FormulaR1C1 = "=CG!Codice_Stato_Res_OS"
    Range("N1").Select
    ActiveCell.FormulaR1C1 = "=CG!Cod_Doc_OS"
    Range("O1").Select
    ActiveCell.FormulaR1C1 = "=CG!Numero_Documento_OS"
    Range("P1").Select
    ActiveCell.FormulaR1C1 = "=CG!Codice_Comune_Ril_OS"
    Range("Q1").Select
   
   
   
End Sub



Grazie
acipriani
Utente Junior
 
Post: 11
Iscritto il: 21/03/13 20:56

Sponsor
 

Re: Macro copia valori nella prima riga disponibile

Postdi ricky53 » 11/04/13 11:28

Ciao,
con questo esempio individuai la prima riga libera:
Codice: Seleziona tutto
Sub Ultima_Riga()
    Dim UR As Long
    UR = Range("A" & Rows.Count).End(xlUp).Row + 1
    MsgBox "Prima riga libera:  " & UR
End Sub


Una volta individuata la prima riga libera, dovrai modificare il tuo codice che adesso fa riferimento alla riga "1", per esempio
Codice: Seleziona tutto
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "=CG!Data_Arrivo_OS"

potrà diventare
Codice: Seleziona tutto
    UR = Range("A" & Rows.Count).End(xlUp).Row + 1 '<<=====  Questa va inserita una volta sola e vale per tutte le altre istruzioni
    Range("B" & UR).Select
    ActiveCell.FormulaR1C1 = "=CG!Data_Arrivo_OS"



Avendo tu inviato solo una parte del codice non posso darti altri suggerimenti!


Una domanda me la sono fatta: ma cosa conterranno i vari dati del foglio "CG" ... ecc?
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Macro copia valori nella prima riga disponibile

Postdi acipriani » 11/04/13 12:03

Bella domanda......ma si vede dalla macro che ho postato........scherzo

Stò facendo un form per l'invio al sito della polizia di stato delle notifiche delle presenze per strutture ricettive (hotel ecc.)
le famose schede di presenze che prima venivano portate ai Carabinieri da quest'anno sono state abolite ed hanno istituito un portale dove poter inserire direttamente on line i dati degli ospiti. Le strutture medio grandi che hanno un software gestionale di solito già produce un file txt come richiesto dal portale ma chi non ha un gestionale dovrebbe caricare on line ogni ospite singolarmente. Cosa fattibile se gli ospiti sono pochi, se c'è un gruppo numeroso tipo un pulmann questo diventa più complicato perchè il portale essendo https se inizi, compili e finisci tutto ok, ma se come spesso succede rispondi al telefono viene un cliente ti rompono in diecimila dopo tot minuti scade la connessione e ti butta fuori costringendoti a ricominciare tutto d'accapo.
Stò quindi creando un semplice form che in base al tipo di cliente OS=ospite singolo CG=Capo Gruppo CF=Capo Famiglia OA=ospite aggiuntivo mi crei il file txt da caricare direttamente sul portale. Ogni file una scheda di notifica.

E' volutamente fatto con excel per non creare un db poi sottoposto ai DPS sulla privacy e quindi ad una gestione più complessa, di salvare i dati quindi al di la del txt non c'è necessità.

Come ti ho risposto in un'altro post il file deve avere tutte le sue caratteristiche ma piano piano piano ci arrivo!!!

Singolarmente i dati sono Anagrafica tipo nome cognome comune e data di nascita ecc ecc


Grazie intanto
acipriani
Utente Junior
 
Post: 11
Iscritto il: 21/03/13 20:56


Torna a Applicazioni Office Windows


Topic correlati a "Macro copia valori nella prima riga disponibile":


Chi c’è in linea

Visitano il forum: Nessuno e 10 ospiti