Ciao Oregon - Scusami Per L'attesa ma tra il mio lavoro e Questo VS in tutte le sue Parti Ho trovato molto difficile riuscire a mettere tutti i Pezzi al proprio posto.Detto questo: Ora penso Di Essere riuscito a fare quasi tutto; Tranne che dove ti ho Evidenziato nella mia Routine.
Che e questa :
Public Class Form1
Dim YrNum As Long, MonthNum As Long, DayNum As Long, MonthDays As Integer, StartNum As Integer
Dim StartDate As Date, SelectedDate As Date, ButtonNum As Integer, CurMonth As Boolean
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
MonthNum += 1
If MonthNum = 13 Then
YrNum = YrNum + 1
MonthNum = 1
End If
StartDate = 1 & "/" & MonthNum & "/" & YrNum
UpDateDisplay()
End Sub
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
StartDate = StartDate.AddYears(1)
YrNum = StartDate.Year
UpDateDisplay()
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
StartDate = StartDate.AddYears(-1)
YrNum = StartDate.Year
UpDateDisplay()
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.Txt_Data.Text = ""
Me.LbL_VarData.Text = ""
YrNum = Now.Year
DayNum = Now.Day
MonthNum = Now.Month - 1 ' meno 1 perché verrà incrementato da ButtMESEpiu_Click
StartDate = Today
Me.Txt_Data.Text = "Oggi " & StartDate
Me.Lbl_AnnoEstratto.Text = Format(StartDate, "yyyy")
Me.Lbl_NumMeseEstratto.Text = Format(StartDate, "MF")
Me.Lbl_Mese.Text = ToUppercaseFirstLetter(Format(StartDate, "MMMM"))
Me.Button2_Click(Button2, New EventArgs)
End Sub
Private Sub Cella_Click(sender As Object, e As EventArgs)
sender.ForeColor = Color.Red
SelectedDate = sender.Text & "/" & MonthNum & "/" & YrNum
SwitchBack()
ButtonNum = sender.tag
End Sub
Public Function ToUppercaseFirstLetter(ByVal Text As String) As String
If Text = "" Then Return Text
Dim array() As Char = Text.ToCharArray
array(0) = Char.ToUpper(array(0))
Return array
End Function
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
MonthNum -= 1
If MonthNum = 0 Then
YrNum = YrNum - 1
MonthNum = 12
End If
StartDate = 1 & "/" & MonthNum & "/" & YrNum
UpDateDisplay()
End Sub
Sub UpDateDisplay()
StartNum = DateAndTime.Weekday(StartDate, FirstDayOfWeek.Monday) - 1 ' Domenica = 6, Lunedi = 0
MonthDays = DateTime.DaysInMonth(YrNum, MonthNum)
If DateTime.DaysInMonth(YrNum, 2) = 29 Then Me.Txt_AnnoBisestile.Text = "Bisestile" Else Me.Txt_AnnoBisestile.Text = ""
Dim X As Integer
If MonthNum = Now.Month And YrNum = Now.Year Then
CurMonth = True
Else
CurMonth = False
End If
Me.Lbl_Mese.Text = ToUppercaseFirstLetter(Format(StartDate, "MMMM"))
For X = 0 To StartNum + MonthDays - 1
me.Cella1.Text = X - MonthDays + 1
Next X
Me.LbL_VarData.Text = StartDate
End Sub
Sub SwitchBack()
'Cella(ButtonNum).ForeColor = Color.DarkBlue ' ripristino colore
Me.Lbl_Mese.Text = SelectedDate.ToLongDateString
Me.Txt_AnnoBisestile.Text = "Tot Giorni = " & SelectedDate.DayOfYear.ToString
Me.LbL_VarData.Text = SelectedDate.DayOfWeek.ToString
End Sub
End Class
Quello che ti ho evidenziato ed e quello per qui Desidererei una Mano
E quello che io Sto Tentando di Voler mettere Nella ( Cella1 ) il numero Corrispondente Del mese precedente che so per certo che è il ( 26 ) che era di Lunedi
Cosi facendo posso poi proseguire più facilmente per raggiunge la Domenica (1) che corrisponde poi All'inizio di questo mese 2023.
In più Sempre che io non ti stia chiedendo troppo : Saresti anche cosi gentile da spiegarmi nella Realta come io possa anche solo per un numero
Poi io chiaramente lo indirizzo poi per tutti gli altri
Come Nascondere i Numeri che in questo momento non Servono; In quanto non fanno parte per il Calcolo Di Questo Mese
Io lo imparato a fare su Excel e sul VB6
Ma non ci Riesco con il VS
Grazie
Saluti sinceri da Maurizio
E Questo e Quanto
Sia In VBA che con il VS 2022