Torna indietro   Hardware Upgrade Forum > Software > Programmazione

DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Abbiamo provato Samsung Galaxy Tab S12 Ultra nella versione 12 GB + 256 GB con tastiera, e il risultato è un tablet che in questa configurazione si comporta come un notebook con la fluidità tipica di Android. Spessore di 5,1 mm, display Dynamic AMOLED 2X da 14,6 pollici, MediaTek Dimensity 9500 e un software senza incertezze compongono un prodotto di vertice, con prezzi da 1.539 euro, frenato solo da un'autonomia nella parte bassa del confronto
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura)
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura)
Abbiamo provato per dieci giorni la Hyundai IONIQ 5 N, con 650 CV, 770 Nm e uno 0-100 km/h in 3,4 secondi. Il suo punto forte è N e-Shift, che simula un cambio a otto rapporti con suoni da motore termico e perfino un bang supersonico
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 18-11-2007, 21:00   #1
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
[vba] aggiungere elementi ad array dentro ciclo

Ciao a tutti. Scusate la domanda sicuramente banale ma mi sto avvicinando alla programmazione in vba. Ciò che vorrei fare è, all'interno di un semplice ciclo da 0 a 9, accodare il valore del contatore i al contenuto dell'array in modo tale da ottenere il mio array con tutti i valori da 0 a 9. Ovviamente sbaglio qualcosa. Mi date una mano? Grazie.

Codice:
Private Sub Comando0_Click()
Dim elementi As Variant
For i = 0 To 9
 elementi() = i
Next i

Debug.Print elementi(1)
End Sub
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 18-11-2007, 21:11   #2
airon
Senior Member
 
Iscritto dal: Feb 2004
Città: milano
Messaggi: 2148
E' perche non definisci il vettore...e poi non usi gli indici.
Non conosco molto il vb ma dovrebbe essere:

Private Sub Comando0_Click()
Dim elementi(10) As Integer //tra parentesi la grandezza del vettore
For i = 0 To 9
elementi(i) = i //elementi(posizione) = valore di i
Next i

Debug.Print elementi(1) //stampi la posizione 1 del vettore, per stamparlo tutto //credo tu debba fare un ciclo for per la stampa.
End Sub

Prova
airon è offline   Rispondi citando il messaggio o parte di esso
Old 18-11-2007, 21:39   #3
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Ti ringrazio, funziona.

Avevo provato anche a scrivere
elementi(i) = i

ma non dichiaravo la dimensione dell'array.
A questo punto però mi sorge un dubbio: questo era un esempio banale ma se io devo aggiungere degli elementi se una certa condizione si verifica o meno, non posso sapere a priori quale sarà la dimensione. Quindi come si fa in questi casi?
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 18-11-2007, 22:26   #4
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2794
Devi ridimensionare l'array esistente. Non so quale sia la funzione per far questo, vedi nella documentazione se esiste "Redim".
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 18-11-2007, 22:59   #5
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Quote:
Originariamente inviato da wingman87 Guarda i messaggi
Devi ridimensionare l'array esistente. Non so quale sia la funzione per far questo, vedi nella documentazione se esiste "Redim".
Grazie. La funzione redim in effetti esiste e a quanto ho capito serve proprio per redimensionare in maniera dinamica l'array.
Ho provato a fare una semplice funzioncina per capirne il funzionamento ma non va


Codice:
Private Sub Comando0_Click()
Dim valori As Variant
Dim minori As Variant
valori = Array(5, 10, 11, 13, 6, 9, 12, 18)
X = 0
For i = LBound(valori) To UBound(valori)
    If (valori(i) < 10) Then
    ReDim Preserve minori(UBound(minori) + 1)
    minori(X) = valori(i)
    X = X + 1
    End If
Next i

MsgBox (minori(0))
End Sub
In pratica dal mio array di partenza vorrei creare un nuovo array che contenga solo i valori inferiori a 10.

Ottengo un errore proprio in corrispondenza della riga redim (per l'esattezza errore di run-time 13. Tipo non corrispondente.

Potete darmi un ultimo aiutino? Grazie.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 18-11-2007, 23:33   #6
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Pare che così funzioni. Comunque se avete consigli da darmi, visto che sono agli inizi, son sempre ben accetti.

Codice:
Private Sub Comando0_Click()
Dim valori As Variant
Dim minori() As Variant
valori = Array(5, 10, 11, 13, 6, 9, 12, 18)
'X = 0
For i = LBound(valori) To UBound(valori)
    If (valori(i) < 10) Then
    ReDim Preserve minori(X)
    minori(X) = valori(i)
    X = X + 1
    End If
Next i

For i = LBound(minori) To UBound(minori)
MsgBox (minori(i))
Next i
End Sub
john_revelator è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
CES Unveiled Milan, l'IA diventa tecnologia fondativa e il commercio torna centrale CES Unveiled Milan, l'IA diventa tecnologia fond...
 Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP Recensione OPPO Find X10 Pro Max: un top di gam...
Palit e GALAX smentiscono le voci sulla ...
Fujifilm annuncia la Instax Mini Evo 2, ...
Tailscale chiude le falle SSH verso root...
Il tuo Galaxy laggava nei giochi? Samsun...
Arrivano i nuovi Amazon Echo: prezzi da ...
Il nuovo pickup elettrico Ford può alime...
Opera WebAI: così l'intelligenza artific...
Copilot nella Sidebar di Edge sparisce p...
X terrorizza gli utenti con una mano gig...
Firmware UEFI, embargo saltato per error...
Android 18 limiterà le modifiche alla ru...
Silent Hill 1 Remake, nuove indiscrezion...
Keystone distrugge 18.835 hardware walle...
GTA VI potrebbe richiedere più GB...
Nokia 6300 rinasce grazie all'IA: arriva...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:48.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v