He tenido que rehacerlo casi todo porque no conseguia que el tuyo funcionase.
Código vb:
Ver originalPrivate Sub Form_Load()
Dim Londres As String
Dim Nueva_York As String
Dim Tokyo As String
Dim Sidney As String
Dim Madrid As String
Dim Francfort As String
Dim Zurich As String
Dim Wellington As String
Dim Toronto As String
'Diferencia horaria en menos
Const DifLondres As Integer = -1
Const DifNueva_York As Integer = -6
Const DifToronto As Integer = -6
'Diferencia horaria en más
Const DifTokyo As Integer = 7
Const DifSidney As Integer = 8
Const DifWellington As Integer = 10
Dim Hora As Integer
Hora = Hour(Now) + DifLondres
If Hora >= 24 Then Hora = Hora - 24
Londres = Hora & ":" & Minute(Now)
Hora = Hour(Now) + DifNueva_York
If Hora >= 24 Then Hora = Hora - 24
Nueva_York = Hora & ":" & Minute(Now)
Hora = Hour(Now) + DifTokyo
If Hora >= 24 Then Hora = Hora - 24
Tokyo = Hora & ":" & Minute(Now)
Hora = Hour(Now) + DifSidney
If Hora >= 24 Then Hora = Hora - 24
Sidney = Hora & ":" & Minute(Now)
Hora = Hour(Now)
Madrid = Hora & ":" & Minute(Now)
Hora = Hour(Now)
Francfort = Hora & ":" & Minute(Now)
Hora = Hour(Now)
Zurich = Hora & ":" & Minute(Now)
Hora = Hour(Now) + DifWellington
If Hora >= 24 Then Hora = Hora - 24
Wellington = Hora & ":" & Minute(Now)
Hora = Hour(Now) + DifToronto
If Hora >= 24 Then Hora = Hora - 24
Toronto = Hora & ":" & Minute(Now)
Label1.Caption = Londres
Label2.Caption = Nueva_York
Label3.Caption = Tokyo
Label4.Caption = Sidney
Label5.Caption = Madrid
Label6.Caption = Francfort
Label7.Caption = Zurich
Label8.Caption = Wellington
Label9.Caption = Toronto
End Sub
Parece que va bien. He comprobado las horas de toronto y wellinton y las muestra bien.
Saludos