Telefonino.net network
 
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. NEI PREFERITI .:: | RSS Forum | RSS News | NEWS web | NEWS software |
| PUBBLICITA' | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | CERCA nel FORUM » |

Torna indietro   WinTricks Forum > Software > Office suite

Notices

Rispondi
 
Strumenti discussione
Vecchio 05-02-2015, 15.34.30   #1
zuzzurellone76
Newbie
 
Registrato: 17-07-2014
Messaggi: 18
zuzzurellone76 promette bene
Unhappy Select case... non funziona in modo corretto.

Sub Rinomina_Etichette()
MsgBox (Riferimeto_Pz)
Select Case Riferimeto_Pz
Case 3 To 84

MsgBox (Riferimeto_Pz & " OK!!!")
PazienteSelezionato.Caption = Range("d" & Riferimeto_Pz).Value
Select Case Range("a" & Riferimeto_Pz).Value
Case 3 To 12
Nucleo.Caption = "A"
Case 12 To 22
Nucleo.Caption = "B"
Case 23 To 36
Nucleo.Caption = "C"
End Select
Stanza.Caption = Range("a" & Riferimeto_Pz).Value
Letto.Caption = Range("b" & Riferimeto_Pz).Value
End Select
End Sub

Allora ho creato questa sub all'interno si un form che opera su una serie di fogli excel.
In base ai tasti cliccati dall'utente rinomina un serie di etichette.
Se il valore è tra 3 ed 84 mi dovrebbe rinominare le etichette secondo il Select colorato di verde.
Il problema è nel primo select (in rosso), praticamente se Riferimeto_Pz ha un valore tra 9 e 29 il case non va avanti , mentre dovrebbe saltare la parte interna solo se il valore è minore di 3 o maggiore di 84.
Il case interno funziona...
ho aggiunto i msgbox solo per verificare la funzionalità...

ma quello che non riesco a capire è perchè solo i valori tra 9 e 29 non li riconosce mente tutti gli altri si.

il valore a Riferimeto_Pz viene assegnato trami te il clic ad un etichetta con una serie di sub come queste:


Private Sub Label1_Click()
Riferimeto_Pz = 1
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label2_Click()
Riferimeto_Pz = 2
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label3_Click()
Riferimeto_Pz = 3
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label4_Click()
Riferimeto_Pz = 4
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label5_Click()
Riferimeto_Pz = 5
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label6_Click()
Riferimeto_Pz = 6
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label7_Click()
Riferimeto_Pz = 7
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label8_Click()
Riferimeto_Pz = 8
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label9_Click()
Riferimeto_Pz = 9
Call routine_Paziente(Riferimeto_Pz)
End Sub

Private Sub Label10_Click()
Riferimeto_Pz = 10
Call routine_Paziente(Riferimeto_Pz)
End Sub

e così via fono all' 82

Poi in un altra sub successivamente il valore Riferimeto_Pz viene incrementato di 2
zuzzurellone76 non è collegato   Rispondi citando
Vecchio 05-02-2015, 16.39.12   #2
zuzzurellone76
Newbie
 
Registrato: 17-07-2014
Messaggi: 18
zuzzurellone76 promette bene
Temporaneamente ho risolto così

Così funziona... ma non riesco a capire perché con select non funziona?

Sub Rinomina_Etichette()
MsgBox (Riferimeto_Pz)
If Riferimeto_Pz > 2 And Riferimeto_Pz < 85 Then
MsgBox (Riferimeto_Pz & " OK!!!")
PazienteSelezionato.Caption = Range("d" & Riferimeto_Pz).Value
Select Case Range("a" & Riferimeto_Pz).Value
Case 3 To 12
Nucleo.Caption = "A"
Case 12 To 22
Nucleo.Caption = "B"
Case 23 To 36
Nucleo.Caption = "C"
End Select
Stanza.Caption = Range("a" & Riferimeto_Pz).Value
Letto.Caption = Range("b" & Riferimeto_Pz).Value
End If
End Sub
zuzzurellone76 non è collegato   Rispondi citando
Vecchio 05-02-2015, 18.47.22   #3
zuzzurellone76
Newbie
 
Registrato: 17-07-2014
Messaggi: 18
zuzzurellone76 promette bene
Rif: Select case... non funziona in modo corretto.

Ho appena fato una brutta scoperta anche il secondo select non analizza tutti i valori...
Possibile?
nel case 3 to 12.. il 6 ad esempio non funziona

Possibile che il select non sia affidabile?
è some se quando do un range di dati ne saltasse una zona
zuzzurellone76 non è collegato   Rispondi citando
Vecchio 05-02-2015, 19.28.21   #4
borgata
Gold Member
WT Expert
 
L'avatar di borgata
 
Registrato: 23-06-2004
Loc.: Cagliari
Messaggi: 13.333
borgata è un gioiello raroborgata è un gioiello raroborgata è un gioiello raroborgata è un gioiello raro
Rif: Select case... non funziona in modo corretto.

Il select ovviamente è affidabile, ti consiglio di fare un po' di debugging per scoprire quali valori sono analizzati e quale risultato è restituito.
___________________________________

La risposta è dentro di te...
e però, è sbagliata!
borgata non è collegato   Rispondi citando
Vecchio 05-02-2015, 21.08.00   #5
zuzzurellone76
Newbie
 
Registrato: 17-07-2014
Messaggi: 18
zuzzurellone76 promette bene
Rif: Select case... non funziona in modo corretto.

il debugging lo avevo già fatto ed ho anche fatto avanzare la routin passo passo, ed anche quando il valore di Riferimeto_Pz era uguale a 9 sul case 3 to 12 salta al case successivo...
zuzzurellone76 non è collegato   Rispondi citando
Vecchio 05-02-2015, 21.18.40   #6
zuzzurellone76
Newbie
 
Registrato: 17-07-2014
Messaggi: 18
zuzzurellone76 promette bene
Rif: Select case... non funziona in modo corretto.

Ho risolto, ma grazie a Borgata , che mi ha fatto rifare il debugging mi sono accorto che Riferimeto_Pz era dichiarato come string. dichiarandolo come byte funziona tutto benissimo

Grazie!!!
zuzzurellone76 non è collegato   Rispondi citando
Vecchio 05-02-2015, 21.54.43   #7
Alexsandra
Senior Member
WT Expert
 
L'avatar di Alexsandra
 
Registrato: 19-05-2007
Loc.: Verona
Messaggi: 1.302
Alexsandra è conosciuto da tuttiAlexsandra è conosciuto da tuttiAlexsandra è conosciuto da tuttiAlexsandra è conosciuto da tuttiAlexsandra è conosciuto da tutti
Rif: Select case... non funziona in modo corretto.

Quota:
Inviato da zuzzurellone76 Visualizza messaggio
Sub Rinomina_Etichette()
....
Select Case Range("a" & Riferimeto_Pz).Value
Case 3 To 12
Nucleo.Caption = "A"
Case 12 To 22
Nucleo.Caption = "B"
Case 23 To 36
Nucleo.Caption = "C"
C'è una incongruenza nei Case in grassetto, il secondo andrebbe scritto
Case 13 To 22
___________________________________

- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale -
Alexsandra non è collegato   Rispondi citando
Vecchio 05-02-2015, 22.24.40   #8
zuzzurellone76
Newbie
 
Registrato: 17-07-2014
Messaggi: 18
zuzzurellone76 promette bene
Rif: Select case... non funziona in modo corretto.

Grazie :-)
zuzzurellone76 non è collegato   Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is ON
Gli smilies sono ON
[IMG] è ON
Il codice HTML è OFF

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
Implementazione T9 su PC c1p8 Programmazione 10 23-07-2012 15.07.27
SOLO X ESPERTI: explorer infetto, ripristino non funziona... swan_x Windows 7/Vista/XP/ 2003 38 01-07-2009 16.01.58
Nuovo Case, Problema con Porta USB anteriore JuSTeR Hardware e Overclock 6 22-08-2006 17.47.13
assemblare un pc in modo corretto luca2 Hardware e Overclock 3 21-01-2006 18.59.49
Costruire un case per un hd esterno onlygio Hardware e Overclock 13 13-10-2003 19.20.46

Orario GMT +2. Ora sono le: 12.28.04.


E' vietata la riproduzione, anche solo in parte, di contenuti e grafica.
Copyright © 1999-2017 Edizioni Master S.p.A. p.iva: 02105820787 • Tutti i diritti sono riservati
L'editore NON si assume nessuna responsabilità dei contenuti pubblicati sul forum in quanto redatti direttamente dagli utenti.
Questi ultimi sono responsabili dei contenuti da loro riportati nelle discussioni del forum
Powered by vBulletin - 2010 Copyright © Jelsoft Enterprises Limited.