Adattare Funzione macro vba in Visual Basic 2015

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
ema.cab
00giovedì 4 maggio 2017 10:46
Salve a tutti, avrei questo problemino,

in sintesi ho creato un programmino con excel,
e sto cercando di ricrearlo co VB 2015.

Mi sono imbattuto in una "Funzione" che vorrei adattare a VB2015.


FUNZIONE
..................................................................
Function tabellina10(aa, bb, cc)

Dim d2, d3, q, n, x

Dim d4, d5, q2, n2


n = Array(0, 10, 20, 30, 0, 10, 20)


n2 = Array(0, 30, 20, 10, 0, 30, 20)


For x = 0 To 4

' tabellina10 orari
d2 = n(x)
d3 = n(x + 1)
q = n(x + 2)
If d2 = aa And d3 = bb And q = cc Then tabellina10 = n(x + 3): Exit For Else tabellina10 = ""

'tabellina10 antiorari

d4 = n2(x)
d5 = n2(x + 1)
q2 = n2(x + 2)
If d4 = aa And d5 = bb And q2 = cc Then tabellina10 = n2(x + 3): Exit For Else tabellina10 = ""

Next x
End Function
.......................................................

che viene richiamata da una cella ess. { "A1" = tabellina10(B1,B2,B3)}



IN PRATICA se nelle celle "B1,B2,B3" si verifica una sequenza di numeri, mi restituisce il numero a seguire.

ESS.

inserisco i numeri

B1 inserisco il num 0
B2 inserisco il num 10
B3 inserisco il num 20

RESTITUISCE

A1 = 30

Fino a qui' tutto bene con Excel.

ho provato ad inserire la funzione in VB2015

che viene richiamata da una "VARIABILE" ess. { x = tabellina10(Form1.TextBox1.Text, Form1.TextBox2.Text, Form1.TextBox3.Text)}

che assegno ad una: Form1.TextBox4.Text = x

ESS.

inserisco i numeri

Form1.TextBox1.Text inserisco il num 0
Form1.TextBox2.Text inserisco il num 10
Form1.TextBox3.Text inserisco il num 20

RESTITUISCE

Form1.TextBox4.Text = 30



il problema e che nella Funzione cosi come e' scritta mi da

errore: 'Array' e' un tipo di classe e non puo essere usato come espressione


n = Array(0, 10, 20, 30, 0, 10, 20)
------

n2 = Array(0, 30, 20, 10, 0, 30, 20)
------

come posso risolvere?

spero di essermi spiegato bene, e di trovare un aiuto.

Grazie.


patel45
00giovedì 4 maggio 2017 11:32
vuoi usare il VB senza studiare ...
Dim n() As Integer = {0, 10, 20, 30, 0, 10, 20}
alfrimpa
00giovedì 4 maggio 2017 14:31
Ed aggiungo che su questo forum si parla del VBA di Excel per cui è difficile, salvo rare eccezioni, che si possa trovare qualcuno conoscitore del VB.
ema.cab
00giovedì 4 maggio 2017 20:40
scusate ma era una specie di emergenza...

grazie tente
patel45
00giovedì 4 maggio 2017 21:36
potevi cercare MSDN array ed avresti trovato subito la risposta
Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 02:14.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com