Newsgroup: it.comp.appl.access
Titolo: cambiare il nome di un campo

Premetto che non sono molto pratico di access
Diciamo che ho una tabella che si chiama fogli cosi composta
CAMPI           valore
id                       1
mese                11
anno                2005
o1
o2                        8
o3                        8
o4                        8
o5                        8
o6
o7                        8
o8                         8
o9                         8
o10                      7.30
o11                       8
o12
o13
o14
o15
o16
o17
o18
o19
o20
o21
o22
o23
o24
o25
o26
o27
o28
o29
o30
o31
posso creare una tabella    con i  campi     id     data    ore
sapendo che tutti i campi che iniziano con o  hanno dentro un valore di ore 
,
e il numero che lo segue identifica il numero del giorno
grazie

 grazie
certo si può fare con una query di creazione tabella usando nei criteri
qualcosa del genere left([campo];1)="o" ti estrae i valori che ti servono
ciao
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


cosi non funziona , mi servireppe un scrivere un codice
sul sitocomune ho trovato qualcosa ma non so proprio come metterci le mani
il codice e il seguente :
Function AlterFieldType(Tbl As String, Fld As String, NewType As String) As 
Boolean
Dim db     As DAO.Database
Dim qdf    As DAO.QueryDef
Dim ris    As Boolean
On Error GoTo AlterFieldType_ERR
    ris = True
    Set db = CurrentDb()
    ' Creazione QueryDef temporaneo
    Set qdf = db.CreateQueryDef("", "Select * from MSysObjects")
    ' Aggiunta campo temporaneo a tabella
    qdf.SQL = "ALTER TABLE " & Tbl & " ADD COLUMN tmpCampo " & NewType
    qdf.Execute
    ' Copia il contenuto del vecchio campo sul nuovo
    qdf.SQL = "UPDATE DISTINCTROW " & Tbl & " SET tmpCampo = " & Fld
    qdf.Execute
    ' Elimina il vecchio campo
    qdf.SQL = "ALTER TABLE " & Tbl & " DROP COLUMN " & Fld
    qdf.Execute
    ' Rinomina il campo temporaneo come il vecchio campo
    db.TableDefs(Tbl).Fields("tmpCampo").Name = Fld
    GoTo FineFunc
AlterFieldType_ERR:
ris = False
FineFunc:
AlterFieldType = ris
End Function


Questa cosa non c'entra nulla. Quello che hai e' il classico "rapportino 
presenze mensile". E' solo un semplice fatto di acquisizione dati.
Come ti arrivano? Foglio Excel, file di testo piu' o meno delimitato, 
xml, db oracle, foglio di carta scritto dai frati benedettini?
La soluzione puo' cambiare in funzione del tipo di fonte dati.
la tabella su cui metterli potra' essere poi "orizzontale" (i.e. con i 
giorni 1-31 sulla sessa riga) o "verticale" (i.e. con attributo data di 
riferimento)
--
a.cara

 End Function
funziona e come
esempio:
TipoSwitch	campo1	campo2	Espr1
AT/10	        AT	/10	AT
AT/10	        AT	/10	AT
AT/10	        AT	/10	AT
AT/10	        AT	/10	AT
AT/10	        AT	/10	AT
il campo TipSwitch č quello da dividere e quaesta č l'sql che lo divide
SELECT [Porte switch].TipoSwitch, Left([TipoSwitch],2) AS campo1,
Mid([TipoSwitch],3,10) AS campo2, Left([TipoSwitch],2) AS Espr1
FROM [Porte switch]
WHERE (((Left([TipoSwitch],2))="at"));
ora adattala alla tua tabella e tutto funziona correttamente
