Utilisez vos compétences Excel dans Google
Depuis le début de cette formation, nous parlons beaucoup de VBA et de programmation dans Excel. Depuis quelque temps, il y a d’autres logiciels qui permettent de faire comme Excel. On retrouve bien sûr la version en ligne d'Excel avec Microsoft 365, mais Google a également sorti sa suite bureautique avec Google Sheets.
Google a donc également sorti sa version des macros. Vous pouvez donc faire la même chose qu’avec Excel directement dans Google Sheets en utilisant cette fois du JavaScript.
Comme nous l’avions abordé au début de ce cours, vous allez pouvoir confirmer que l’important, c’est d’apprendre un premier langage de programmation. Le JavaScript est bien sûr différent du VBA dans les mots à utiliser, mais il reste fondamentalement similaire au VBA dans la conception. 😉
Si on fait le parallèle avec le langage humain, la première langue que l'on va apprendre va être difficile. Vous aurez par contre des facilités d’apprentissage pour les autres langues que vous apprendrez. C’est exactement pareil pour la programmation ! C’est pourquoi je vous propose de traduire un de vos premiers scripts en JavaScript, et de l'exécuter sur Google Sheets.
Écrivez votre premier script sur Google Sheets
Allez sur Google Sheets et créez un nouveau sheet. Pour les besoins de notre exemple, nous allons refaire le code VBA que nous avons déjà vu plus haut :
Sub annee()
Dim departement_naissance As String
departement_naissance = Range("A1").Value
If departement_naissance = 34 Then
MsgBox ("Tu es rattaché à l’agence Occitanie")
ElseIf departement_naissance = 75 Then
MsgBox ("Tu es rattaché à l’agence d’Île-de-France")
ElseIf departement_naissance = 33 Then
MsgBox ("Tu es rattaché à l’agence de Nouvelle Aquitaine")
ElseIf departement_naissance = 69 Then
MsgBox ("Tu es rattaché à l’agence Auvergne Rhône-Alpes")
Else
MsgBox ("Nous n'avons pas l'information")
End If
End Sub
Dans ce code, vous avez déclaré une variable, puis vous l’avez chargée avec la valeur de la cellule A1. Vous avez ensuite testé pour 4 départements (34, 75, 33 et 69), et vous avez indiqué l’agence de rattachement. Si on ne connaît pas le département, vous indiquez à l’utilisateur que nous n’avons pas l’information.
Afin de commencer à écrire votre macro, vous allez écrire dans un premier temps 34 dans la cellule A1 de votre Google Sheet.
Allez ensuite dans l’éditeur de macro. Pour faire cela, il faut aller dans Extensions puis cliquer sur Apps Script. Cela vous ouvre un nouvel onglet vers l’apps script, l’éditeur de macro de Google Sheet.
Vous trouverez ci-dessous un corrigé du code en JavaScript, qui fait exactement la même chose. Vous pouvez vous amuser à regarder les similitudes entre les deux langages.
VBA | JavaScript |
Sub annee() | function annee() { |
Dim departement_naissance As String |
|
departement_naissance = Range("A1").Value | var departement_naissance = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange("A1").getValue();
|
If departement_naissance = 34 Then | if (departement_naissance == 34) {
|
MsgBox ("Tu es rattaché à l’agence Occitanie") | SpreadsheetApp.getUi().alert("Tu es rattaché à l’agence Occitanie"); |
ElseIf departement_naissance = 75 Then | } else if (departement_naissance == 75) { |
MsgBox ("Tu es raccroché à l’agence d’Île-de-France") | SpreadsheetApp.getUi().alert("Tu es rattaché à l’agence d’Île-de-France"); |
ElseIf departement_naissance = 33 Then | } else if (departement_naissance == 33) { |
MsgBox ("Tu es rattaché à l’agence de Nouvelle Aquitaine") | SpreadsheetApp.getUi().alert("Tu es rattaché à l’agence de Nouvelle Aquitaine"); |
ElseIf departement_naissance = 69 Then | } else if (departement_naissance == 69) { |
MsgBox ("Tu es rattaché à l’agence Auvergne Rhône-Alpes") | SpreadsheetApp.getUi().alert("Tu es rattaché à l’agence Auvergne Rhône-Alpes"); |
Else | } else { |
MsgBox ("Nous n'avons pas l'information") | SpreadsheetApp.getUi().alert("Nous n'avons pas l'information"); |
End If | } |
End Sub | } |
Comme vous pouvez le voir sur cet exemple, le code est très similaire. Ce sont deux langages de programmation qui sont différents, mais vous remarquez que dans la manière, chaque ligne de VBA est associée à une ligne en JavaScript.
Comme nous l’avons dit au début de ce cours, l’important en programmation c’est de comprendre les concepts. Vous pourrez rapidement vous adapter à un nouveau langage de programmation si vous avez compris la logique.
En résumé
Google Sheets utilise du JavaScript pour exécuter des macros.
La logique de programmation est la même entre le VBA et le JavaScript.
Comme nous venons de le voir, le plus important dans l’apprentissage de la programmation, c’est de comprendre la logique. Même si un langage est différent, il utilise généralement une syntaxe très proche. Dans le prochain et dernier chapitre de ce cours, nous aborderons justement la poursuite de cet apprentissage qui n’est jamais vraiment terminé (pour notre plus grand plaisir).