Opérateurs arithmétiques.
Visual Basic .NET fournit différent opérateurs arithmétiques :
& ' Concaténation
+ ' Addition ou concaténation
- ' Soustraction
/ ' Division
\ ' Division entière
Mod ' Modulo (reste de division)
^ ' Exponentiation
"7" & "2" ' "72"
"7" + "2" ' "72"
7 + 2 ' 9
7 - 2 ' 5
7 * 2 ' 14
7 / 2 ' 3.5
7 \ 2 ' 3
7 Mod 2 ' 1
7 ^ 2 ' 49
Exemple (le séparateur décimal est le point contrairement en français où on utilise la virgule) :
 Dim Commission As Single
 Dim Ventes As Single
 Ventes = 3142.51
 Commission = 0.3 * Ventes ' Calcule 30 % de commission.
 MsgBox(Commission) ' 942,753
Remarque : ces symboles sont les mêmes que dans la calculatrice scientifique Windows.
Addition.
 x = 7 + 2 ' 9
 x = 25 + -4 ' 21
 Dim Chaine As String
 Chaine = "Chaine1" + "Chaine2" ' Chaine1Chaine2
L'opérateur "+=" incrémente la variable d'une valeur donnée :
 Dim x As Integer = 54
 x += 89 ' 143
 x += 7 ' 150
Il fonctionne aussi en concaténation :
 Dim x As String = "Un renard"
 x += " saute" ' Un renard saute
 x += " la barrière" ' Un renard saute la barrière
Soustraction.
"-" soustrait deux nombres :
 Dim x As Integer
 x = 7 - 2 ' 5
 x = 25 - -4 ' 29
Multiplication.
Le symbole est l'étoile :
 Dim x As Integer
 x = 7 * 2 ' 14
 x = 25 * -4 ' -100
Division.
Il existe plusieurs types de divisions.
Division standard.
Opérateur "/" :
 Dim x As Single ' Type acceptant les nombres décimaux
 x = 7 / 2 ' 3,5
 x = 25 / 4 ' 6,25
Division entière.
Si le type ne le permet pas, l'opérateur "/" arrondit à l'inférieur : il fournir le résultat de la division sans le reste :
 Dim x As Integer
 x = 7 / 2 ' 3
 x = 25 / 4 ' 6
Modulo.
Cet opérateur fourni le reste de la division :
 Dim x As Integer
 x = 7 Mod 2 ' 1 (7-2*3)
 x = 25 Mod 4 ' 1 (25-4*6)
Exponentiation.
L'opérateur "^" élève un nombre à une puissance :
 Dim x As Integer
 x = 7 ^ 2 ' 7² = 49
Si la puissance est de 0,5 il peut aussi servir à calculer la racine carré d'un nombre :
 Dim x As Single
 x = 7 ^ 0.5 ' 2,645
Attention aux types des variables :
 Dim x As Integer
 x = 7 ^ 0.5 ' 3
La racine Nième se calcule donc généralement ainsi :
 Dim x As Single
 Dim n As Single
 n = 7
 x = 2 ^ (1 / n)
Car formula_1.
Arrondis.
Module Module1
 Sub Main()
 Dim Nombre1 As Single = 1.5
 Console.WriteLine(Math.Round(Nombre1)) ' 2
 Console.WriteLine(Math.Floor(Nombre1)) ' 1
 Console.WriteLine(Math.Ceiling(Nombre1)) ' 2
 Console.WriteLine(Math.Truncate(Nombre1)) ' 1
 Console.ReadLine()
 End Sub
End Module
Remarque : avec "Imports Math", plus besoin d'appeler ces fonctions avec ce préfixe.
Comparaisons.
Module Module1
 Sub Main()
 Console.WriteLine(Math.Max(3, 4))
 Console.ReadLine() ' 4
 End Sub
End Module

Programmation Visual Basic .NET/Chaines de caractères

Joindre des chaînes de caractères.
Concaténation.
L'opérateur "&" joint deux chaînes ensemble :
 Dim Chaine1 As String = "123"
 Dim Chaine2 As String = "456"
 Dim Chaine3 As String
 Chaine3 = Chaine1 & Chaine2 ' 123456.
L'opérateur "+" peut être utilisé à la place de "&", mais non recommandé pour éviter la confusion avec les additions.
Concat().
La méthode codice_1 est une alternative à l'opérateur :
 Dim Chaine1 As String = "123"
 Dim Chaine2 As String = "456"
 Dim Chaine3 As String = "789"
 Dim Resultat As String
 Resultat = String.Concat(Chaine1,Chaine2,Chaine3) ' 123456789
Cela fonctionne aussi avec les tableaux :
 Resultat = String.Concat(TableauChaines) ' 12345
Méthodes sur les chaînes de caractères.
Pour créer des sous-chaînes, il existe toujours les fonctions VB6 :
 Sub Main()
 Dim NomChaine As String = "lorem ipsum dolor sit amet"
 NomChaine = NomChaine.Replace("i", "o")
 Console.WriteLine(Mid(NomChaine, InStr(NomChaine, " "), 6))
 Console.ReadLine() ' Affiche " opsum"
 End Sub

Programmation Visual Basic .NET/Logique
Opérateurs logiques.
Not.
L'opérateur renvoie quand la condition est sinon :
If Not (1 = 2) Then
 MessageBox.Show("(1 = 2) est False. Donc Not False = True")
End If
And.
 retourne quand ses deux opérandes sont , sinon .
Il les évalue toutes les deux avant de se prononcer.
If (1 = 1) And (2 = 2) Then
 MessageBox.Show("(1 = 1) est True. (2 = 2) est True. Donc True And True = True")
End If
AndAlso.
 est comme sauf qu'il économise du temps : il dit quand la condition qui le précède est , puis sinon si les deux opérandes sont , sinon . Cet ordre s'appelle un circuit court logique.
Or.
 est quand au moins l'une de ses opérandes est , sinon . Il évalue les deux (comme ).
OrElse.
 est le circuit logique court de : il donne quand sa première opérande est , sinon il teste la seconde est renvoie si elle est , et si les deux sont finalement . 
Xor.
 ("ou exclusif", de l'anglais "exclusive or") est uniquement si l'une des deux opérandes est , mais pas quand elles le sont toutes les deux.

Programmation Visual Basic .NET/Gestion d'exception

Levées d'exception.
Pour éviter que des erreurs bloquent l'exécution du programme il est possible de définir un comportement quand elles surviennent.
codice_1.
La méthode utilisée en VBA est toujours disponible. Celle-ci n'était pas structuré car fait appel à un Goto vers une étiquette :
 Public Sub Main()
 On Error GoTo Etiquette1
 Dim Resultat As Integer = 2
 Dim a = 1
 Dim b = 0
 Resultat = a / b ' Division par zéro
Etiquette1:
 MessageBox.Show(Resultat) ' renvoie 2
 End Sub
Pour éviter d'avoir à définir des étiquettes on peut tout simplement ignorer les erreurs un moment (puis les réactiver avec codice_2 :
 On Error Resume Next
 Dim Resultat As Integer = 2
 Dim a = 1
 Dim b = 0
 Resultat = a / b
 On Error GoTo 0
 MessageBox.Show(Resultat)
codice_3.
Le gestionnaire d'erreur structuré s'appelle codice_3. De nombreux types d'erreur y sont disponible par héritage de la classe codice_5. 
 Public Sub Main()
 Dim Resultat As Integer = 2
 Dim a = 1
 Dim b = 0
 Try
 Resultat = a / b
 Catch ex As Exception
 MsgBox(ex.ToString)
 Finally
 MessageBox.Show(Resultat)
 End Try
 End Sub
Remarque : pour relancer une exception dans un bloc codice_6, utiliser le mot clé codice_7 sans argument. En effet il reset la propriété codice_8 de l'objet exception en cas d'argument.

Programmation Visual Basic .NET/Contrôles