Cours VBA pour les nuls

Option Explicit

Sub ()

'Sélection de la cellule A10 et suppression des données

Range("A10").Select

Range("A10").Clear

'Sélection de la plage de cellule C1:F10 et suppression des données

Range("C1:F10").Select

Range("C1:F10").Clear

End Sub

Sub ()

'Sélectionner la feuille 2

Sheets("Sheet2").Select

'Sélectionner la plage A1:B10 et D10:E20

Range("A1:B10, D10:E20").Select

Range("A1:B10, D10:E20").Clear

End Sub

Sub ()

'Sélectionner la première feuille

Worksheets("Sheet1").Select

'Insertion des données dans les cellules A1, B1, C1 et D1

Range("A1").Value = "MANDAT"

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

Range("C1").Value = "Count of mandat (Yesterday)"

Range("D1").Value = 10

End Sub

Sub ()

Copier/coller

Worksheets(3).Range("A2:B12").Copy Workbooks("Mandat.xlsm").Worksheets("Sheet1").Range("A2")

End Sub

Sub after()

'Passage par les variables

'Déclaration des variable sur la même ligne

Dim cel1 As Range, cel2 As Range

'Utilisation de l'instruction Set (attribution d'un objet a une variable)

Set cel1 = Sheets("Sheet3").Range("A2:B12")

Set cel2 = Workbooks("Mandat.xlsm").Worksheets("Sheet1").Range("A2")

'Copie / coller la plage de cellule

cel1.Copy cel2

End Sub

Sub ()

'Appliquer l'attribut gras

Range("A1").Font.Bold = True

'Appliquer l'attribut souligné

Range("A1").Font.Italic = True

'Appliquer la taille de la police 14

Range("A1").Font.Size = 14

'Appliquer la couleur bleu

Range("A1").Font.ColorIndex = 5

End Sub

Sub ()

'Instruction de bloc With...End with pour appliquer les attributs demandés en cellule B2

With Range("B1").Font

.Bold = True

.Italic = True

.Size = 14

.ColorIndex = 5

End With

End Sub

Sub ()

'Insérer un message pour l'utilisateur. La MsgBox donne seulement une information a l'utilisateur dans ce cas

MsgBox "The macro is going to start", vbInformation, "START"

End Sub

Sub ()

Dim name As String

'Récupérer le nom de l'utilisateur dans une variable via une InputBox

name = InputBox("Please, what is your name", "User", "User_1")

'Insérer le nom de l'utilisateur en cellule A20

Range("A20") = name

End Sub

Sub ()

'Déclaration de la variable Answer

Dim Answer As Integer

'Lorsque la MsgBox est de type Oui / Non, elle renvoie (parametre VBA) le chiffre 6 lorsque l'utilisateur clique sur Oui et le chiffre 6 pour Non

'Attention a ne pas oublier les parentheses pour la MsgBox

Answer = MsgBox("Do you want to start ?", vbYesNo, "To be sure")

'Utilisation de l'instruction IF sur une seule ligne

If Answer = 7 Then Exit Sub

If Answer = 6 Then MsgBox "So the macro is going to start...", vbInformation

End Sub

Sub ()

'Déclaration de la variable

Dim Count_Of_Man As Integer

'Utilisation de la propriete visible de l'objet feuille pour faire apparaitre la feuille 2

Worksheets("Sheet2").Visible = True

'Attribution a la variable Count_Of_Man du nombre de la ligne de la derniere cellule non vide de la colonne A de la feuille 1

Count_Of_Man = Worksheets("Sheet1").Range("A1").End(xlDown).Row

'Inscription de la variable, moins 1, dans la cellule D4

Cells(4, 4) = Count_Of_Man - 1

End Sub

Sub ()

'Déclaration des variables, AUM pour le montant de l'encours sous gestion et Com pour le commentaire

Dim AUM As Long, Com As String

'Sélection de la feuille 1

Worksheets("Sheet1").Select

'Insertion d'une colonne entre B et C

Columns("C").Insert

'Ajout du terme Ranking en cellule C1

Range("C1").Value = "Ranking"

'Attribution de la variable AUM

AUM = Range("B2")

'Utilisation de l'instruction IF pour gérer plusieurs conditions

'L encours sous gestion se trouve en colonne B, en cellule B2,

'et le commentaire est a inscrire en colonne C, en cellule C2

If AUM = 0 Then Com = "Category T"

If AUM > 0 And AUM < 1000000 Then Com = "Category E"

If AUM > 1000000 And AUM < 3000000 Then Com = "Category D"

If AUM > 3000000 And AUM < 5000000 Then Com = "Category C"

If AUM > 5000000 And AUM < 10000000 Then Com = "Category B"

If AUM > 10000000 Then Com = "Category A"

'Attribution du commentaire dans la cellule C2

Range("C2") = Com

End Sub

Sub ()

'Déclaration des variables sur deux lignes differentes. Même variable que la macro 11

Dim AUM As Long

Dim Com As String

'Attribution de la variable AUM égale a la valeur de la cellule B2

AUM = Cells(2, 2)

'Utilisation de l'instruction IF pour appliquer la couleur de la police en rouge

If AUM = 0 Then

Com = "Category T"

Cells(2, 3).Font.ColorIndex = 3

'Attribution du commentaire a la cellule C2

Cells(2, 3) = Com

End If

End Sub

Sub ()

'Déclaration des variables, AUM pour le montant de l'encours sous gestion et Com pour le commentaire

Dim AUM As Long, Com As String

'Attribution de la variable AUM à la valeur de la cellule B2

AUM = Range("B2")

'Utilisation de l'instruction IF avec plusieurs conditions

If AUM = 0 Then

Com = "Category T"

ElseIf AUM > 0 And AUM < 1000000 Then

Com = "Category E"

ElseIf AUM > 1000000 And AUM < 3000000 Then

Com = "Category D"

ElseIf AUM > 3000000 And AUM < 5000000 Then

Com = "Category C"

ElseIf AUM > 5000000 And AUM < 10000000 Then

Com = "Category B"

Else

Com = "Category A"

End If

'Attribution du commentaire a la cellule C2

Range("C2").Value = Com

End Sub

Sub ()

'Déclaration des variables, AUM pour le montant de l'encours sous gestion et Com pour le commentaire

Dim AUM As Long, Com As String

'Attribution de la variable AUM à la valeur de la cellule B2

AUM = Range("B2")

'Utilisation de l'instruction Select Case. Cette instructions est très adaptée pour gérer de nombreuses conditions.

Select Case AUM

Case Is = 0

Com = "Category T"

Case 0.01 To 999999.99

Com = "Category E"

Case 1000000 To 2999999.99

Com = "Category D"

Case 3000000 To 4999999.99

Com = "Category C"

Case 5000000 To 9999999.99

Com = "Category B"

Case Else

Com = "Category A"

End Select

'Attribution du commentaire a la cellule C2

Range("C2") = Com

End Sub

Sub ()

'Déclaration des variables, AUM pour le montant de l'encours sous gestion et Com pour le commentaire

'Et une variable pour la boucle

Dim AUM As Long, Com As String

Dim i_Loop As Integer

'Cette boucle va inscrire le commentaire pour l'ensemble des cellules de la colonne C

'Attention a la valeur du début de la boucle et de la valeur de la fin de la boucle.

'La méthode offset oblige un décalage

For i_Loop = 1 To 11

AUM = Range("B1").Offset(i_Loop, 0).Value

'Utilisation de l'instruction IF avec plusieurs conditions

If AUM = 0 Then

Com = "Category T"

ElseIf AUM > 0 And AUM < 1000000 Then

Com = "Category E"

ElseIf AUM > 1000000 And AUM < 3000000 Then

Com = "Category D"

ElseIf AUM > 3000000 And AUM < 5000000 Then

Com = "Category C"

ElseIf AUM > 5000000 And AUM < 10000000 Then

Com = "Category B"

Else

Com = "Category A"

End If

'Attribution du commentaire à la cellule de la colonne C

Range("C1").Offset(i_Loop, 0).Value = Com

Next i_Loop

End Sub

Sub ()

'Déclaration des variables. Une variable pour récupérer l'AUM a chaque ligne (AUM_By_Mandat)

'Et une autre variable pour sommer l'AUM total (Total_AUM)

'Enfin une variable pour incrémenter la boucle (Counter)

Dim AUM_By_Mandat As Long, Total_AUM As Long

Dim Counter As Byte

'Attribution du chiffre 0 a la variable Counter

Counter = 0

'Le bloc d'instruction se répéte tant que la cellule n'est pas vide

Do

'Attention a ne pas oublier d'incrémenter la variable Counter (compteur)

'Sinon la boucle ne pourra pas s'arrêter

Counter = Counter + 1

'Récupération de l'AUM pour chaque ligne

AUM_By_Mandat = Range("B1").Offset(Counter)

'Récupération de l'AUM total

Total_AUM = Total_AUM + AUM_By_Mandat

Loop While Range("B1").Offset(Counter) <> ""

'Attribution de la somme à la cellule B13

Range("B13") = Total_AUM

End Sub

Sub ()

'Déclaration des variables

Dim N_Row As Integer, i_Loop As Integer

'Détermination de la derniere ligne du tableau

N_Row = Sheets("Sheet1").Cells(1, 1).End(xlDown).Row

'Mise en place d'une boucle, en partant de la fin et en remontant d'une seule lighne (step -1)

For i_Loop = N_Row To 2 Step -1

'Utilisation d'une condition pour savoir si l'élément de la troisieme colonne est different de FR

If Cells(i_Loop, 3) <> "FR" Then

'Suppression de la ligne

Rows(i_Loop).Delete

End If

Next i_Loop

End Sub

Voici un exemple de cours sous VBA pour l'automatisation de plusieurs tâches sous excel.

Cordialement

Super résumé merci intelgo75.

A référencé

Bonjour,

Utilises le balises Code </> et là, je ne suis pas vraiment d'accord :

Sub Test()

    'Sélectionner la première feuille <--- pas si elle à été déplacée dans la collection
    Worksheets("Sheet1").Select

    'là oui, ça sera toujours la première feuille qui sera sélectionnée quel que soit son nom !
    Worksheets(1).Select

End Sub

je n'ai pas lu plus loin !

Bonjour intelgo75, Theze,

Il faut éviter les .select dans la mesure du possible,

Sub ()
'Sélection de la cellule A10 et suppression des données
Range("A10").Select
Range("A10").Clear

'Sélection de la plage de cellule C1:F10 et suppression des données
Range("C1:F10").Select
Range("C1:F10").Clear
End Sub

Tu peux écrire dirctement

Sub ()
'Sélection de la cellule A10 et suppression des données
Range("A10").Clear   'ou ClearContents si tu souhaites effacer les valeurs uniquement

'Sélection de la plage de cellule C1:F10 et suppression des données
Range("C1:F10").Clear
End Sub

idem pour

Sub ()
'Sélectionner la feuille 2
Sheets("Sheet2").Select

'Sélectionner la plage A1:B10 et D10:E20
Range("A1:B10, D10:E20").Select
Range("A1:B10, D10:E20").Clear
End Sub

Tu peux simplifier

Sub ()
'Sélectionner la feuille 2
Sheets("Sheet2").Range("A1:B10, D10:E20").Clear    'Sélectionner la plage A1:B10 et D10:E20
End Sub

with Sheets("Sheet2")
.Range("A1:B10, D10:E20").Clear    'Sélectionner la plage A1:B10 et D10:E20
end with

Cordialement,

bonjour

ce fil serait à déplacer dans l'autre section du forum https://forum.excel-pratique.com/viewforum.php?f=10

amitiés et bonne année à tous

Rechercher des sujets similaires à "cours vba nuls"