Affichage des articles triés par pertinence pour la requête clavier. Trier par date Afficher tous les articles
Affichage des articles triés par pertinence pour la requête clavier. Trier par date Afficher tous les articles

Les raccourcis clavier pour Excel MAC




Nous avons déjà traiter sur ce blog des raccourcis clavier (7 mars 2009) qui facilitent une bonne utilisation de votre logiciel préféré.
Mais certain "exceliens" travaillent sur un Mac et ont dû mal à retrouver les équivalents sur leur clavier.
Aussi je leurs recommanderai  la lecture de cet article très complet placé sur le site Microsoft Office Mac.



Ce site est d'ailleurs une mîne d'informations pour tous les utilisateurs des versions Mac de Microsoft Office.
Bonne Lecture


Les raccourcis clavier



Beaucoup d’utilisateurs sont aujourd’hui encore très favorable à l’utilisation des touches de raccourcis clavier pour manipuler leur logiciel préféré. Voici donc quelques possibilités offertes par Excel 2007, il est vrai que certains de ces raccourcis sont incontournables pour optimiser son travail.

Les touches de fonctions



F1
F2
F3
F4
F5
F6
 
Afficher
l’aide
Activer
l’édition de la cellule
Coller
un
nom
Répéter la dernière action
Atteindre une
cellule
Atteindre le volet
suivant
Maj +

Insérer
un
commentaire
Insérer
une Fonction
Poursuivre une recherche
Lancer
une recherche
Atteindre le volet précédent
Alt +
Insérer un graphique dans la feuille
Enregistrer
sous

Quitter Excel


Ctrl +
Afficher ou masquer le ruban
Aperçu
avant impression
Gérer
les noms
Fermer
le
classeur
Restaurer
la
fenêtre
Atteindre la fenêtre suivante

F7
F8
F9
F10
F11
F12

Vérifier l’orthographe
Etendre
la sélection

Créer
un
menu
Insérer un graphique dans une nouvelle  feuille
Enregistrer sous
Maj +
Chercher
un synonyme
Ajouter à la
sélection

Afficher le menu contextuel
Insérer une
feuille
de calcul
Enregistrer
le classeur
Alt +

Gérer
les Macros


Ouvrir
l’éditeur Visual Basic

Ctrl +


Réduire la
fenêtre
Agrandir ou restaurer la fenêtre
Insérer une feuille
Macro
Ouvrir un classeur

Les actions clavier

CTRL + A
Sélectionner toute la feuille de calcul
CTRL + O
Ouvrir un classeur
CTRL + B
Recopier vers le bas
CTRL + P
Imprimer
CTRL + C
Copier une sélection
CTRL + Q
Appliquer un format nombre (date heure)
CTRL + D
Recopier vers la droite
CTRL + R
Annuler un format date
CTRL + E
Appliquer un format nombre (puissance de 10)
CTRL + S
Enregistrer un classeur
CTRL + F
Lancer une recherche
CTRL + T
Atteindre une cellule
CTRL + G
Mettre une sélection en gras
CTRL + U
Mettre une sélection en soulignement
CTRL + H
Faire un remplacement
CTRL + V
Coller une sélection
CTRL + I
Mettre une sélection en italique
CTRL + W
Fermer le classeur
CTRL + J
Appliquer un format nombre (date)
CTRL + X
Couper une sélection
CTRL + K
Insérer un lien hypertexte…
CTRL + Y
Répéter la dernière action
CTRL + L
Afficher ou masquer un plan
CTRL + Z
Annuler la dernière action
CTRL + M
Appliquer un format nombre (Euro)
CTRL + ;
Insérer la date courante
CTRL + N
Créer un nouveau classeur
CTRL + :
Insérer l’heure courante



Déplacez vous ! vite.



Cet article, promis aux lecteurs depuis fort longtemps, fait suite à l'article du 7 Mars 2009 portant sur les raccourcis clavier  dans Excel. Ici nous allons exposer les raccourcis permettant le déplacement du pointeur de la cellule active puis les méthodes de sélection des plages de cellules toujours à l'aide du clavier.

 

Les touches de déplacements :



Touche
seule
Une colonne vers la droite
Une colonne vers la gauche

 
Une ligne vers le bas
Une ligne vers le haut
Un écran vers le haut
Un écran vers le bas
Début de ligne
 CTRL +  1er colonne occupée
Dernière colonne occupée
Dernière ligne occupée
1er ligne occupée
Feuille de calcul précédente
Feuille de calcul suivante
Cellule A1
 ALT + Un écran vers la gauche
Un écran vers la droite


Les méthode de sélection :




Maj + 
(ou F8)
 Sélection d'une cellule vers la gauche
Sélection d'une cellule vers la droite
Sélection d'une cellule vers le bas
Sélection d'une cellule vers le haut
Sélection de cellules sur la hauteur d'un écran vers le bas
Sélection de cellules sur la hauteur d'un écran vers le haut
Sélection jusqu'au début de la ligne
Maj + CTRL + Sélection jusqu'à la 1er colonne occupée
Sélection jusqu'à  la dernière colonne occupée
Sélection jusqu'à  la dernière ligne occupée
Sélection jusqu'à la 1er ligne occupée
  Sélection jusqu'à  la cellule A1


Je me suis limité aux possibilités les plus utiles, il existe de nombreuses autres combinaisons (comme par exemple la touche F5 pour atteindre une cellule par son nom ou sa référence), aussi j’attends vos commentaires et suggestions.

Merci de votre attention...



VBA : Contrôle de validité dans un formulaire



Cette semaine voyons comment programmer simplement divers contrôles de validité sur les objets Textbox d’un formulaire (saisie obligatoire, type de données, longueur de chaîne…). Différentes fonctions de type String nous serons d’un grand secours…


-1 - Réalisons d’abord le formulaire VB suivant :
 
-2 – Puis affectons la macro OpenForm() à  un bouton de commande « Annuler » de la feuille de calcul pour ouvrir le formulaire. Le code a été saisi dans une feuille de module de code (Module 1)
Sub OpenForm()
'Rendre toutes les zones vide
FormTest.TextBox1.Text = ""
FormTest.erreur1.Caption = ""
FormTest.TextBox2.Text = ""
FormTest.erreur2.Caption = ""
FormTest.TextBox3.Text = ""
FormTest.erreur3.Caption = ""
FormTest.TextBox4.Text = ""
FormTest.erreur4.Caption = ""
FormTest.TextBox5.Text = ""
FormTest.TextBox6.Text = ""
FormTest.erreur6.Caption = ""
'avant l'ouverture du formulaire
  FormTest.Show
End Sub

-3 – Programmons maintenant par sécurité le  bouton de commande SORTIR du formulaire
Private Sub Sortir_Click()
'Fermons le formulaire en cas de click sur le bouton Annuler
FormTest.Hide
End Sub

- 4 – Premier contrôle très simple pour savoir si l’utilisateur a bien renseigné ce textbox. 
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'L'événement Exit se déclenche lorsque le focus sort de la zone de texte
If TextBox1.Text = "" Then
erreur1.Caption = "Vous n'avez pas rempli ce champ"
'Un simple message pour attirer l'attention de l'utilisateur
Else
erreur1.Caption = ""
End If
End Sub

-5 – Convertissons maintenant une saisie en MAJUSCULE
Private Sub TextBox2_Change()
'L'événement Change se déclenche lorsque la valeur de la zone de texte est modifiée
TextBox2.Text = UCase(TextBox2.Text)
'ou LCase() pour mettre en minuscule
erreur2.Caption = "Conversion réussie"
End Sub

- 6 – Vérifions la longueur d’une chaîne, ici 5 caractères
 Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Len(TextBox3.Text) = 5 Then
'Len() retourne la longueur d'une chaîne de texte
erreur3.Caption = "Cette zone contient bien 5 caractères"
Else
erreur3.Caption = "Cette zone ne contient pas 5 caractères mais " _
  & Len(TextBox3.Text) & "caractère(s)"
End If
End Sub

- 7 – Vérifions que la saisie est bien de type texte et qu’il ne s’agit pas d’un nombre ou d’une date.
 Private Sub TextBox4_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If IsNumeric(TextBox4.Text) Or IsDate(TextBox4.Text) Then
'isNumeric() et isDate() renvoie VRAI si la zone contient un nombre ou une date
erreur4.Caption = "Ceci n'est pas un texte"
Else
erreur4.Caption = "Ceci est  un texte"
End If
End Sub

- 8 – Associons dans la même procédure les 4 contrôles précédents
Private Sub TextBox5_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox5.Text = "" Or Len(TextBox5.Text) <> 5 _
Or IsNumeric(TextBox5.Text) Or IsDate(TextBox5.Text) Then
       MsgBox "Veuillez remplir cette zone avec" _
 & Chr(10) & "un texte de 5 caractères"
'Chr() simule un touche clavier ici le retour ligne
Else
TextBox5.Text = UCase(TextBox5)
MsgBox "Ceci est  un texte de 5 caractères" _
& Chr(10) & "converti en majuscule"
End If
End Sub
 
- 9 – Dernier exemple, vérifions si une chaîne 1 est comprise dans une chaîne 2, ici nous voulons savoir si la valeur 1 ou 2 se trouve en première  position de la saisie
Private Sub TextBox6_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If InStr(1, TextBox6.Text, 1) Or InStr(1, TextBox6.Text, 2) Then
'InStr(départ, chaîne, comparaison) permet de savoir si comparaison est présent
' dans chaîne à partir de la position départ
erreur6.Caption = "La saisie commence par le chiffre 1 ou 2"
Else
erreur6.Caption = "La saisie ne commence pas par le chiffre 1 ou 2"
End If
End Sub



VBA : Modifier la casse à l'aide du clic droit



La casse est un terme utilisé dans les domaines de la typographie et de l'informatique pour   distinguer une alternative entre les lettres écrites en capitales (MAJUSCULE) et les lettres écrites en minuscule. En l’absence d'utilisation des fonctions de traitement de chaînes de caractères :
  1. =MAJUSCULE( chaîne de caractères )
  2. =MINUSCULE( chaîne de caractères )
  3. =NOMPROPRE( chaîne de caractères) - 1er lettre de chaque mot de la chaîne de caractères en majuscule
Actuellement, votre logiciel Excel ne permet pas de modifier la casse des mots contenus dans les cellules d'une feuille de calcul (ni commande, ni touche de raccourci clavier). Aussi je vous propose ce code VBA permettant la bascule entre les trois positions. La difficulté ici ne réside pas dans la modification de la casse d'un contenu sélectionné mais plutôt dans le choix de l'affectation de ce code en vue de son exécution. Afin de rendre son utilisation la plus aisée possible, j'ai choisi ici d'utiliser le menu contextuel, c'est à dire de reprogrammer le menu surgissant du bouton droit de la  souris. Pour que cette application puisse être utilisable quelque soit le classeur que vous manipulez, vous avez le choix d'incorporer votre code soit dans un classeur de macros personnelles, soit dans un classeur de macros complémentaires.

 

 

 

 

 

 

 

Première étape : Modifier le menu contextuel des cellules.

 

Les procédures sont évidement stockées dans le module ThisWorkbook du projet VBA, j'ai ici choisi d'utiliser mon classeur (.xlsb) de macros personnelles.

Sub resetmenu()
          Application.CommandBars("cell").Reset

 End Sub
'**********************************************************
Private Sub Workbook_Open()
resetmenu
'appel la macro qui effacera la commande du menu contextuel
'crée lors de la session précédente


    Dim Cpop1 As CommandBarPopup
    Dim Cbut As CommandBarButton
    Dim MaBarre As CommandBar
    Set MaBarre = Application.CommandBars("cell")
    Set Cpop1 = MaBarre.Controls.Add(msoControlPopup)
    'on ajoute le popup qui va comporté tout les boutons
    With Cpop1
        .Caption = "Modifier la casse"    'label du sous-menu
    End With
    'on ajoute un bouton au sous-menu contextuel
    Set Cbut = Cpop1.Controls.Add(Type:=msoControlButton)
    With Cbut
        .FaceId = 403    ' bouton avec icône (référence à une table)
        .Caption = "MAJUSCLE"    ' label du bouton
        .OnAction = "majuscule"    'appel de la macro associée
    End With
    'on répéte l'opération pour les deux autres boutons
    Set Cbut = Cpop1.Controls.Add(Type:=msoControlButton)
    With Cbut
        .FaceId = 404
        .Caption = "minuscule"
        .OnAction = "minuscule"
    End With
    Set Cbut = Cpop1.Controls.Add(Type:=msoControlButton)
    With Cbut
        .FaceId = 306
        .Caption = "Nom Propre"
        .OnAction = "nompropre"
    End With
End Sub


Etape 2 : Écrire les trois macros pour la gestion de la casse


Les procédures sont stockées dans une feuille de module de code du projet VBA, du même classeur (.xlsb) de macros personnelles.

Dim Ch As Range
Sub majuscule()
  For Each Ch In Selection
  'Pour chaque cellule Ch de ma sélection Selection
  'Selection permet de renvoyer l'objet sélectionné dans la fenêtre active

    If Not Ch.HasFormula Then
    'la propriété HasFormula de l'objet range permet de tester qu'aucune
    ' cellules de la plage ne contiennent de formule, dans ce cas la conversion est ignorée

      Ch.Value = UCase(Ch.Value) 'Upper Case = MAJUSCULE
    End If
  Next Ch
End Sub

'*************************************************************
Sub minuscule()
  For Each Ch In Selection
    If Not Ch.HasFormula Then
      Ch.Value = LCase(Ch.Value) 'Lower Case = minuscule
    End If
  Next Ch
End Sub


'*************************************************************
 Sub nompropre()
  For Each Ch In Selection
    If Not Ch.HasFormula Then
      Ch.Value = Application.Proper(Ch.Value)
      'si une fonction Excel n'a pas d'équivalent en VBA
      'utiliser le la fonction Excel (anglais) comme une méthode de l'objet application

    End If
  Next Ch
End Sub


Merci de votre attention...



VBA : Les ActiveX de contrôle des dates



Dans cette article je souhaite expliquer comment utiliser les contrôles ActiveX "Microsoft Monthview "et "Microsoft DTPicker", puisqu'ils ne sont plus fournis en natif dans les versions Excel 2013 et 2016. Dans une première partie nous développerons la récupération et l'installation de ces contrôles, puis leurs utilisations pour contrôler efficacement une saisie de date dans une feuille de calcul ou dans un formulaire VBA.

Installation des contrôles

 

En premier lieu, mettons en place les contrôles "Microsoft Monthview" et "Microsoft DTPicker", le fichier MSCOMCT2.OCX contient les contrôles en question, ainsi que les contrôles UpDown, ScrollBar et Animation. Il faut commencer par télécharger ce fichier, car il n'existe probablement pas sur votre ordinateur (si vous utilisez Excel 2013 ou 2016) vous pouvez le télécharger à l'adresse suivante : http://www.ocxme.com/ocx/files/mscomct2_ocx.html
Vous devez ensuite copier le fichier dans le dossier c:\Windows\system32 si vous avez une version 32 bits de Windows, ou dans le dossier c:\windows\sysWOW64\ en cas de version 64 bits.
Il faut à présent Exécuter le fichier OCX, pour cela activer l'invite de commande en mode AdministrateurUtiliser la commande CMD dans votre commande Démarrer / Exécuter ou dans la zone de recherche selon votre version de Windows. Attention de bien valider la saisie à l'aide des touches SHIFT+ CTRL + Entrée du clavier pour bien basculer l'invite de commande en mode Administrateur.




La ligne de commande à saisir, sera alors :

Pour windows 32 bits : %systemroot%\System32\regsvr32 c:\windows\System32\MSCOMCT2.OCX
Pour windows 64 bits : %systemroot%\SysWoW64\regsvr32 c:\windows\SysWOW64\MSCOMCT2.OCX


Utilisation des contrôles dans Excel : Saisir une date dans une cellule

 

    • Accéder à l'onglet Développeur du Ruban
    • Utilisez la commande Insérer / contrôles ActiveX / Autres contrôles
    • Sélectionnez le contrôle "Microsoft Date and Time Picker control 6.0 (SP6)"
     


    • Dessinez l'objet en glissant + Positionnement et redimensionnement

    Attention la commande Mode Création du ruban Développeur est alors active, pour faire le test de fonctionnement, vous devrez d'abord la désactiver.




    • Quelques réglages de bases possibles grâce au menu contextuel de l'Objet



    • Pour affectez le choix utilisateur à une cellule, utilisez la commande Propriétés du  Menu contextuel



    • Renseignez la propriété LinKedCell

     

    Utilisation des contrôles en VBA : Saisir une date dans un formulaire

     

    Nous allons en premier lieu ajouter les contrôles dans la boite à Outils :



    • Affichez la boîte à outils
    • Faites clic droit pour obtenir le menu contextuel de la boîte
    • Sélectionner alors la commande Contrôle Supplémentaires…


    • Dans la liste des contrôles Choisissez "Microsoft MonthView control 6.0 (SP6)" et "Microsoft Date and Time control 6.0 (SP6)"


     
    • Cliquez sur OK
    • Dessiner les 2 objets MonthView1 et DTPicker1 sur votre formulaire grâce aux nouveaux contrôles apparaissant dans la boîte à outils.



    Ici le code VBA nous montre comment affecter le choix de l'utilisateur dans un contrôle ou l'autre, à une cellule de la feuille de calcul.

    Private Sub CommandButton1_Click()
         Range("a10").Value = DTPicker1.Value
         Range("a11").Value = MonthView1.Value

         UserForm1.Hide
    End Sub



    Merci de votre attention…



    VBA : Créer une macro multi feuilles



    Voici un point particulier sur lequel il faut noter une sérieuse différence avec les versions antérieures d’Excel. Effectivement pour être multi-feuilles une macro doit être enregistrée dans le fichier PERSONNAL.XLSB (cf article précédent). Voici comment procéder sur un exemple très simple.

     
    - 1 – Ouvrir une nouvelle feuille de calcul dans Excel et passez la commande Développeur / Enregistrer une macro
    • Attribuer un nom de la macro
    • Choisissez éventuellement une Touche de raccourci pour son Exécution clavier
    • Choisissez impérativement l’option Classeur de macros personnelles dans la liste Enregistrer la macro dans :
    • Cliquez sur Ok
    -2 – Procéder à l’enregistrement de votre macro (Dans l’exemple j’ai enregistré un code pour imprimer automatiquement une feuille de calcul en 3 exemplaires). N’oubliez pas de cliquez sur le bouton Arrêter l’enregistrement lorsque vous avez terminé.
    Automatiquement le code enregistré ira se copier dans une feuille de module de code du projet PERSONNAL.XLSB
    Si vous ne possédez pas l’onglet développeur : Cliquez sur le Bouton Office / Options Excel / Standard et cochez l’option Afficher l’onglet développeur dans le ruban

    - 3 – Pour voir le code de votre macro faites ALT + F11 ou Développeur / Visual Basic. Le code se trouve bien dans une feuille de module de code du projet PERSONAL.XLSB.
     Sub Impression_3_EX()
    ' Impression_3_EX Macro
    ExecuteExcel4Macro "PRINT(1,,,3,,,,,,,,2,,,TRUE,,FALSE)"
    End Sub


    - 4 –Nous allons ajouter un bouton à la barre d’outils Accès rapide pour une exécution plus pratique de la macro.
    • Faites clic / droit sur la barre d’outils Accès rapide
    • Choisissez l’option Personnaliser la barre d’outils Accès rapide
     
    • Dans la liste des catégories de commande, choisissez Macros
    • Sélectionnez la macro dans la liste et cliquez sur le bouton Ajouter >>, la macro apparaît dans la liste de droite
    • Cliquez sur le bouton Modifier… pour sélectionner un autre symbole
     
    • Ciquez sur le bouton Ok puis à nouveau sur Ok
    L’exécution sera désormais possible sur n’importe quel classeur en utilisant le symbole ajouté sur la barre d’outils Accès rapide
    -5 – A la fermeture du classeur n’omettez pas de confirmer l’enregistrement de la modification du fichier XLSB



    top