Lettre Décembre 2003

 
N'oubliez pas

Besoin d'une assistance, d'une application
MS Office

Consultez
GEMCCAP

Ecrivez-moi

Le lien du mois
Un site pour vous aider dans la manipulation d'Internet Explorer

 Access

Une requête de non correspondance

Ce type de requête permet de connaître les données absentes dans une table et présente dans une autre. Ces données doivent être du même type et de même taille. Pour notre exemple prenons :

  • une table "Adherents" contenant des personnes et un champ primaire IDadh  représentant chacune de ces personnes,
  • une autre table "Eleves" contenant les enfants de ces personnes et un champ  IDadh  correspondant au parent de la table "Adherents"

Une requête de ce type nous permet de connaître toutes les personnes n'ayant pas d'enfants. Dans celle-ci :

  • afficher la table "Adhérents" ainsi que la table "Eleves".
  • Ajouter à votre requête tous les champs de la table "Adherents" que vous désirez.
  • Si aucune relation n'existe entre chaque IDadh  de ces tables, veuillez la créer.
  • Double-cliquer sur le lien représentant cette relation, choisissez le type de lien renvoyant toutes les données de la table "Adherents" et seulement ceux correspondant de la table "Eleves"
  • Si vous affichez maintenant le résultat de cette requête vous affichez l'ensemble des adhérents avec une ligne par enfant, une seule ligne si aucun enfant n'est renseigné.
  • Revenez en mode création, ajoutez le champ IDadh de la table "Eleves", ne cochez pas Afficher, dans la zone Critères tapez Est Null

Votre requête n'affichera maintenant que les adhérents n'ayant pas d'enfants.

 Excel

Afficher une durée h:mm:ss en minutes ou en secondes

Dans une cellule, une valeur telle que 12:35:00 représente 12h et 35 mn, pour afficher ce résultat en minutes, il est inutile de la convertir en décimales, il suffit de modifier le format de cellules :

  • Clic-droit, Format de cellules
  • onglet Nombre,
  • sélectionnez la catégories Personnalisée
  • dans la zone Type, tapez [m]:ss, ce qui nous donne 755:00

Pour un affichage en seconde le format personnalisé doit être [s], ce qui donne 45300

Utilisation des volets

Afin de gérer plus facilement les grandes feuilles, Excel nous propose une division en 4 parties de celle-ci.

  • Menu Fenêtre/ Fractionner, vous vous retrouvez avec 2 barres (horizontale et verticale), vous pouvez les déplacer à votre guise.
  • Ou en haut de la barre de défilement verticale, vous tirez la barre horizontale vers le bas.
  • Ou en bas à droite de la barre de défilement horizontale, vous tirez la barre verticale vers la droite.

Pour ôter le fractionnement :

  • Vous tirez les barres jusqu'au bord de la fenêtre
  • Ou Fenêtre/ Supprimer le fractionnement
  • Ou double-cliquez sur ces barres.

Vous pouvez maintenant vous déplacer horizontalement et verticalement dans chacun de ces volets de façon indépendante. Ceci est pratique pour effectuer des formules d'un volet à l'autre ou pour du copier-coller.
Par contre, si vous gérer une liste de données, ce n'est pas l'idéal, vous devez alors figer les volets afin de ne pouvoir déplacer que le contenu de votre liste tout en gardant fixe la ou les lignes de titres (vous pouvez également garder fixe 1 ou plusieurs colonnes). Pour cela :

  • Si vous avez déjà affiché les volets grâce à une des méthodes décrites ci-dessus, Fenêtre/Figer les volets
  • Si vous n'avez pas affiché ces volets, sélectionnez la cellule supérieure gauche de la partie mobile puis Fenêtre/Figer les volets

Pour retrouver toute la feuille en déplacement : Fenêtre/Libérer les volets

 VBA

Ouvrir un classeur seulement s'il n'est pas déjà ouvert

Function OuvreClasseur(strChem As String) As Workbook
     Dim strName As String
 

' s'il y a erreur on passe à la ligne suivante
On Error Resume Next
     strName = Dir$(strChem) 'lorsque le fichier existe, cette fonction renvoie le nom seul du fichier
     Workbooks(strName).Activate
     ' si le classeur n'est pas ouvert cela provoque une erreur
     If Err <> 0 Then
          Err.Clear 'on remet à 0 les erreurs
          Workbooks.Open strChem 'on ouvre alors le fichier
     End If
     Set OuvreClasseur = Workbooks(strName) ' on renvoie le classeur
End Function
 

Créer une feuille sommaire

Sub CreationFlleSommaire()
     Dim iNb As Integer, iNoL As Integer
     Dim bExisteFlle As Boolean

On Error Resume Next
     bExisteFlle = Worksheets("Sommaire").Name
     If Err.Number = 9 Then ' il y erreur si la feuille n'existe pas
          Err.Clear
          ActiveWorkbook.Worksheets.Add before:=Sheets(1) ' dans ce cas on ajoute une feuille
          ActiveSheet.Name = "Sommaire" 'on la nomme Sommaire
     End If
On Error GoTo 0
     With Worksheets("Sommaire") 'avec cette feuille Sommaire
          iNoL = 1
          .Cells.Clear 'on supprime tout ce qu'elle contient (au cas où elle existait auparavent)
          For iNb = 1 To Worksheets.Count 'pour chaque feuille du classeur
               If Worksheets(iNb).Name <> "Sommaire" Then 'si elle est différente du sommaire
                    'ajout d'un lien hypertexte vers la cellule A1 de la feuille sur la feuille Sommaire
                    .Hyperlinks.Add Anchor:=.Range("A" & iNoL), Address:="", SubAddress:="'" & Worksheets(iNb).Name & "'!A1"
                    .Range("A" & iNoL).Value = Worksheets(iNb).Name
                    iNoL = iNoL + 1
               End If
          Next
     End With
End Sub

Créer un classeur contenant une feuille par mois

Sub CreerClassMois(strAn As String)
     Dim wkb As Workbook, Flle As Worksheet
     Dim iNo As Integer

     Set wkb = Workbooks.Add
On Error Resume Next
     For Each Flle In wkb.Worksheets
          Flle.Delete
     Next
     ' dateserial renvoit une date à partir d'une année, du chiffre correspondant au mois et au jour
     ' format permet de renvoyer cette date en ne retenant que le mois en lettre et l'année
     ' la fonction proper permet de mettre la 1ère lettre en majuscule

     Worksheets(1).Name = Application.WorksheetFunction.Proper(Format(DateSerial(strAn, 1, 1), "mmmm yyyy"))
On Error GoTo 0
     For iNo = 2 To 12
          Set Flle = wkb.Worksheets.Add(after:=Worksheets(iNo - 1))
          Flle.Name = Application.WorksheetFunction.Proper(Format(DateSerial(strAn, iNo, 1), "mmmm yyyy"))
     Next
End Sub
 

 Windows

Un son d'avertissement lors de l'appui des touches Verr. Num et Ver. Maj

Pour activer ce son :

  • Dans le Panneau de configuration, sélectionner Options d'accessibilité
  • Cochez Utilisez les touches bascules

Le mode Pellicule et Diaporama pour un dossier contenant des images dans XP

Nous avons tous un dossier Mes Images dans Windows XP qui nous permet de visualiser nos images en miniatures, en pellicule et en Diaporama. Pour savoir comment manipuler ces différents affichages, reportez-vous à la page http://www.cathyastuce.com/win/dossiers_xp.htm#affichage.

Mais vous n'êtes pas obligé de mettre toutes vos images ou photos dans ce dossier, vous pouvez paramétrer n'importe quel dossier en dossier de même type :

  • Clic-droit sur le dossier, sélectionnez Propriétés
  • dans l'onglet Personnaliser, dans la liste déroulante Utilisez ce type de dossier pour modèle, sélectionnez Images (préférables pour plusieurs fichiers)

 Word

Remplacer ou permuter des parties de mots

Vous désirez remplacer toutes les occurrences d'un mot par exemple tête et têtes ou toutes les occurrences du verbe chanter par chantonner ( je chante par je chantonne et ils chantaient par ils chantonnaient).

  • Edition/Remplacer
  • Cliquez sur le bouton Plus
  • Cocher Utiliser les caractères génériques
  • Dans la zone Recherche tapez <texte1 (dans notre 2ème exemple : <chant)
  • Dans la zone Remplacer tapez texte2 (dans notre 2ème exemple : chantonn)

Pour rechercher toutes les occurrences du mot tête et non le mot entêter, vous devez ajouter devant tête le signe < qui indique le début d'un mot, le signe > indique la fin du mot. Afin de sélectionner chaque mot en entier vous devez ajouter le signe * qui remplace n'importe quel caractère, ce qui nous donne : <tête*>

Pour permuter des mots, par exemple MONIER Cathy en Cathy MONIER :

  • Edition/Remplacer
  • Cliquez sur le bouton Plus
  • Cocher Utiliser les caractères génériques
  • Dans la zone Recherche tapez (MONIER) (Cathy)
  • Dans la zone Remplacer tapez \2 \1

En fait Word numérote chaque mot mis entre parenthèse de la zone Rechercher, vous pouvez donc les réordonner en utilisant leur n°.

  et

 
AccueilDébut de la page