You are on page 1of 8

24/02/2015

Universit Hassan II Casablanca


Ecole Suprieure de Technologie de Casablanca

Les variables
Integer : Dim x As Integer
x=6
Range("A1").Value = x

Double : Dim x As Double

Prof . EL HADDIOUI Ismail

String : Dim book As String

// x = 5,5
// book = "excel"

Boolean : Dim var As Boolean


var = True
2014-2015

If var = True Then MsgBox "c'est vrai"


2

24/02/2015

If / Else (Si / Sinon)

Les boucles (for / do-while)


Les boucles permettent de modifier plusieurs cellules la fois
For est une boucle dterministe, le nombre d'itrations est dfini a l'entre

L'instruction Si/Sinon permet d'excuter des instructions en


fonction de rponses des conditions

Dim i As Integer
For i = 1 To 10

If Range("A1").Value >= 10 Then

Cells(i, 1).Value = 100

Range("B1").Value = "Admis"

Next i
=================================

Else

Dim i As Integer, somme As Integer


somme = 0

Range("B1").Value = "Non Admis"

For i = 1 To 20

End If

somme = somme + 5
Cells(1, i).Value = somme
Next i
3

24/02/2015

Les boucles (for / do-while)

Les boucles (for / do-while)

La double boucle permet de modifier les cellules

La boucle do-while est une boucle indterministe : l'excution

horizontalement et verticalement en mme temps

de l'itration est conditionne par une expression boolenne

Dim i As Integer, j As Integer

Dim i As Integer

For i = 1 To 6

i=1
Do While Cells(i, 1).Value <> "" And Cells(i, 2).Value <> ""

For j = 1 To 3

Cells(i, 3).Value = Cells(i, 1).Value + Cells(i, 2).Value

Cells(i, j).Value = 100

i=i+1

Next j

Loop

Next i
5

24/02/2015

La date

La date - DateAdd
Pour ajouter des jours, mois, minutes une date :

La date actuelle :

exampleDate = DateAdd("d", 3, "2/09/2010 15:04:10")

Range("A1").Value = Now
MsgBox Now // Hour(Now) Second, Minute, Day, Month, Year

Insrer une date :


Dim exampleDate As Date
exampleDate = DateValue("04/10/2009")
MsgBox Year(exampleDate) // Month, Day
Syntaxes : 04/10/2009 - 04,10,2009 - 04 octobre 2009 - 04/10/09
- 04 oct 2009 - 04-10-09
7

Value

Explanation

yyyy

Year

Quarter // 3 mois

Month

Day of the year

Day

Weekday

ww

Week

Hour

Minute

Second
8

24/02/2015

Events (Les vnements)

Events (Les vnements)

Les vnements permettent de raliser des actions directement aprs

Fermer le classeur

un changement sans utiliser des boutons

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)

Workbook : vnements pour le classeur entier

MsgBox "A bientt"

Ouvrir le classeur

End Sub

Private Sub Workbook_Open()


MsgBox "Good Morning"
End Sub

Ajouter une feuille


Private Sub Workbook_NewSheet(ByVal Sh As Object)

Activer le classeur (directement aprs l'ouverture)

MsgBox "Feuille ajoute"

Private Sub Workbook_WindowActivate(ByVal Wn As Window)


MsgBox "Good Morning2"
End Sub

End Sub

10

24/02/2015

Events (Les vnements)

Application Object

Worksheet : vnements pour une seule feuille

Cet objet permet de modifier les options d'Excel


Exemple : DisplayAlerts

Modifier une cellule

Application.DisplayAlerts = False
Application.DisplayAlerts = True

Private Sub Worksheet_Change(ByVal Target As Range)


If Target.Value < 0 Or Target.Value > 20 Then MsgBox "Note incorrecte"

Exemple 2 : Close

End Sub

ActiveWorkbook.Close

11

12

24/02/2015

ActiveX Controls

Userform

On peut modifier la mise en forme des cellules sans utiliser les

Cration des formulaires utilisateur (Contrles ActiveX)

squences utilisateur, mais par des boutons ActiveX


Label

Mode cration >> Proprits >> Caption >> Gras & Bleu

TextBox
Deux OptionButtons

Private Sub CommandButton1_Click()

CheckBox

Selection.Font.Bold = True

CommandButton

Selection.Font.Color = vbBlue
End Sub
13

14

24/02/2015

Userform
Private Sub CommandButton1_Click()
Dim phrase As String
If TextBox1.Value <> "" Then phrase = "Nom : " & TextBox1.Value & vbNewLine
If OptionButton1.Value = True Then phrase = phrase & "Femme" & vbNewLine
If OptionButton2.Value = True Then phrase = phrase & "Homme" & vbNewLine
If CheckBox1.Value = True Then
phrase = phrase & "Etudiant interne" & vbNewLine
Else
phrase = phrase & "Etudiant externe" & vbNewLine
End If
MsgBox phrase
End Sub

15

You might also like