Rechercher des liaisons dans un classeur Il n'existe aucune méthode automatique pour rechercher les liaisons utilisées dans un classeur. Toutefois, étant donné que les liaisons placent le nom du classeur source (fichier source : fichier qui contient les informations qui ont été utilisées pour créer un objet lié ou incorporé. Lorsque vous mettez à jour les informations du fichier source, vous pouvez également mettre à jour l’objet lié du fichier de destination.) entre crochets [ ] lorsque le classeur est fermé, vous pouvez le rechercher. Par exemple =SOMME([Budget.xls]Annuel! Fermez tous les classeurs à l'exception de celui dans lequel vous voulez rechercher les liaisons. Pour rechercher les liaisons utilisées dans les noms Dans le menu Insertion, pointez sur Nom, puis cliquez sur Définir. Pour rechercher les liaisons utilisées dans les zones de texte ou les titres de graphique Pour rechercher les liaisons utilisées dans d'autres objets Pour rechercher les liaisons utilisées dans les séries de données d'un graphique
Les fiches VBA - Comprendre : Les fonctions de Date/Heure Voici une fiche relative aux fonctions disponibles dans la bibliothèque VBA. Elle concerne exclusivement les fonctions de Date/Heure (module DateTime) Vous noterez que certaines fonction (Date, Time, ...) peuvent parfois être suffixées d'un $. Ce symbole indique que la fonction renvoie l'information sous la forme d'une valeur de type String (Chaîne de caractères). Les dates sont stockées dans un numérique à virgule flottante sur 8 octets (64 bits IEEE754 (1)) , dont la partie entière représente la date et la partie décimale l'heure. La date de référence est le 1/1/1900 qui a pour valeur 2 (2) . Un Jour = 1 Une Heure = 1/24 = 0.041666666666666666666666666666667 Une Minute = 1/1440 = 0.00069444444444444444444444444444444 Une seconde = 1/86400 = 0.000011574074074074074074074074074074 Dans le calendrier grégorien, il est possible de stocker toutes les dates comprises entre le 1/1/100 et le 31/12/9999 III-A. Ces fonctions sont les fonctions fondamentales. III-B. III-C. III-C-1. III-D. III-D-1.
Les images et shapes Accueil Insertion d'une image externe Pictures.Insert(fichierImage) insère le fichier spécifié à la position du curseur. Sub essai() répertoirePhoto = "c:\mesdoc\" ' Adapter nom = "droc" ActiveSheet.Pictures.Insert(répertoirePhoto & nom & ".jpg").Name = nom ActiveSheet.Shapes(nom).Left = [B2].Left ActiveSheet.Shapes(nom).Top = [B2].Top End Sub ou Sub essai2() répertoirePhoto = "c:\mesdoc\" ' Adapter nom = "droc" Set img = ActiveSheet.Pictures.Insert(répertoirePhoto & nom & ".jpg") img.Left = [B2].Left img.Top = [B2].Top img.Name = nom End Sub Pour que la hauteur de l'image soit égale à la hauteur de la cellule répertoirePhoto = "c:\mesdoc\" ' Adapter nom = "droc" Set c = Range("B2") With ActiveSheet .Pictures.Insert(répertoirePhoto & nom & ".jpg").Name = nom .Shapes(nom).Left = c.Left .Shapes(nom).Top = c.Top .Shapes(nom).LockAspectRatio = msoTrue .Shapes(nom).Height = c.Height End With Pour que l'image occupe la cellule en hauteur et largeur Si la cellule est fusionnée GetOpenFileName Gif Web
Tutoriels Déclarer les variables dans VBA ? La déclaration des variables est toujours recommandée. Il s'agit de la toute première étape en terme d'optimisation du code VBA. Bien que non obligatoire, la déclaration des variables avec le type de données adéquat apporte des avantages indéniables : Plus vous rationaliserez les types de variable utilisées et mieux vous maitriserez le déroulement de votre projet VBA (savoir ce qu'on fait et comment on y parvient, est déjà le premier pas vers la maitrise, non ?). Les Types de Données VBA Pour déclarer correctement une variable, l'objectif est simple : choisir le type de données le plus approprié aux valeurs à stocker dans cette variable tout en privilégiant le type représentant le poids le plus faible. Quelques exemples illustrant ce principe : EXCEPTIONS A LA REGLE ! Le Nom des variables Vous pouvez utiliser n'importe quel expression pour nommer vos variables. Option Explicit Portée et visibilité des variables Exemple : Option Explicit Durée de vie des variables
Utiliser les contrôles dans un UserForm, en VBA Excel I-A. Comment Insérer un contrôle▲ Vous devez tout d'abord créer un UserForm dans votre classeur afin d'y ajouter des contrôles. Les contrôles sont accessibles depuis l'éditeur de macro, dans la fenêtre "boîte à outils". Lorsque vous passez le curseur de la souris sur les objets, leur nom s'affiche dans une infobulle. Si l'objet que vous souhaitez utiliser n'est pas visible, faites un clic droit dans la boîte à outils, sélectionnez l'option "Contrôles supplémentaires". Utilisez la fenêtre de propriétés pour personnaliser le contrôle (Changer le nom, une fonctionnalité, l'apparence de l'objet...etc...). Si les macros servant à lire ou modifier une propriété sont placées dans l'UserForm, vous pouvez écrire: Si la procédure est externe (placée dans un module standard, un autre UserForm...etc...) vous devez spécifier le nom de la Forme contenant l'objet: UserForm1.Label1.Caption = "Test" I-B. Dim Ctrl As Control For Each Ctrl In Me.Controls MsgBox Ctrl.NameNext Ctrl Une autre possiblité. II-A.
Automatiser l'impression d'un classeur Excel en PDF via PDFCreator - Le grenier Access Suite à l'article Automatiser l'impression d'un état en PDF via PDFCreator, un lecteur du blog m'a demandé si c'était possible de faire la même chose pour Excel uniquement. Il faut juste quelques petits aménagements pour transformer le code Access en un code Excel. Voici donc, pour une fois, un article qui s'applique uniquement à Excel... Si vous avez manqué le début... Consultez l'article cité plus haut avant toute chose. Le code VBA Voici la procédure VBA adaptée de l'article précédent, et adaptée spécifiquement pour Excel. OptionExplicit ' Ne pas oublier de cocher la bibliothèqe PDFCreator' dans le menu Outils / Références de Visual Basic Editor ' API Windows pour faire une temporisation en millisecondesPrivate Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) ' Constantes pour les temporisationsPrivate Const maxTime = 10 ' en secondesPrivate Const sleepTime = 250 ' en millisecondes ' Nom du fichier PDF produit OutputFilename = pdfc.cOutputFilename Exemple 1 Exemple 2
Automatiser l'impression d'un classeur Excel en PDF via PDFCreator Suite à l'article Automatiser l'impression d'un état en PDF via PDFCreator, un lecteur du blog m'a demandé si c'était possible de faire la même chose pour Excel uniquement. Il faut juste quelques petits aménagements pour transformer le code Access en un code Excel. Voici donc, pour une fois, un article qui s'applique uniquement à Excel... Si vous avez manqué le début... Consultez l'article cité plus haut avant toute chose. Le code VBA Voici la procédure VBA adaptée de l'article précédent, et adaptée spécifiquement pour Excel. OptionExplicit ' Ne pas oublier de cocher la bibliothèqe PDFCreator' dans le menu Outils / Références de Visual Basic Editor ' API Windows pour faire une temporisation en millisecondesPrivate Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) ' Constantes pour les temporisationsPrivate Const maxTime = 10 ' en secondesPrivate Const sleepTime = 250 ' en millisecondes ' Nom du fichier PDF produit OutputFilename = pdfc.cOutputFilename Exemple 1 Exemple 2
Utiliser les UserForm en VBA Excel Ce document propose une description générale des UserForm. Il s'agit avant tout d'une introduction pour: La création et la mise en forme de la boite de dialogue dans votre projet. Une présentation des méthodes et propriétés accessibles par macro. Une description des évènements principaux. Quelques exemples particuliers d'utilisation. Pour insérer un UserForm dans votre projet: Vous devez tout d'abord afficher l'éditeur de macros (Alt + F11), puis Cliquez sur votre fichier dans l'explorateur de projets. Dès que l'UserForm est créé, il est possible d'effectuer un affichage rapide en appuyant sur le bouton "Exécuter Sub/UserForm", ou sur la touche raccourci F5. Vous pouvez modifier la taille de la boite de dialogue en utilisant les poignées de redimensionnement. Utilisez la fenêtre de propriétés pour personnaliser l'USF manuellement: Changer le nom, une fonctionnalité, l'apparence du formulaire...etc... Le tableau suivant décrit succintement chaque propriété. III-A. III-A-1. III-A-2. III-A-3.
FAQ Visual Basic - Question 190 : Comment et pourquoi faut-il déclarer les variables d'un programme ? Comment et pourquoi faut-il déclarer les variables d'un programme ? Bien que Visual basic ne l'exige pas de façon formelle, il est possible et même fortement recommandé de déclarer toute variable préalablement à son utilisation. L'instruction Option Explicit permet d'ailleurs de rendre obligatoire les déclarations de variables. Pourquoi déclarer les variables La possibilité en VB de ne pas déclarer les variables est un archaïsme, une survivance des toutes premières versions du dialecte BASIC. La déclaration des variables présente de nombreux avantages; On ne conçoit pas aujourd'hui de réellement programmer en VB sans utiliser la déclaration des variables. Les avantages de la déclaration des variables sont les suivants : Augmenter la lisibilité : La déclaration explicite des variables est d'une grande aide lors de la lecture de code. Comment (bien!) La déclaration des variables se fait en VB avec l'instruction Dim. Voici quelques règles pour la déclaration des variables : Remarques
VBA - Déclarations, types et références Une constante est un littéral auquel on donne un nom: Une constante doit être déclarée et initialisée. Par exemple, dans l'instructionConst cDouzaine = 12 Const est l'instruction qui indique à VBA que le texte qui suit est une déclaration de constante. cDouzaine est le nom de la constante. = est l'instruction d'assignation. 12 est une constante littérale qui sera copiée dans cDouzaine. La valeur d'une constante NE PEUT PAS être modifiée lors de l'exécution du programme. VBA contient plusieurs constantes intrinsèques qui nomment des valeurs spécifiques à VBA. Par exemple, vbRed vaut 255. Les constantes intrinsèques sont automatiquement déclarées et initialisées par VBA. Dans l'Éditeur VBA, appuyez sur la touche F2 (ou menu Affichage, choix Explorateur d'objets). Dans la 2e liste déroulante (1), tapez constants Vous pouvez aussi consulter l'aide VBA (recherchez Constantes). Variables Les littéraux et les constantes ont des valeurs fixes pendant toute l'exécution d'un programme VBA. Être ambigu.
Format de cellules Cette page aborde le formatage d'un tableau (sélection rapide de tableaux, formatage automatique, formatage conditionnel), le formatage de cellules, la taille des cellules, etc. Les commandes du menu Format sont expliquées là : Format.html. Méthodes de sélection de tableaux Sélectionner tout un tableau en un éclair, deux méthodes Positionnez-vous sur une cellule du tableau, et faites l'action suivante : ctrl * Dans le menu Edition, choisissez la commande Atteindre, cliquez sur le bouton Cellules, puis sur l'option Zone en cours. activecell.currentregion.select 'celluleactive.zoneencours.selectionner 'XL5/95 Mise en forme automatique, pour encadrer et colorer tout un tableau en un éclair Aller dans le menu format, choississez l'option, vous trouverez différents styles d'encrage et d'encadrement. Exemple pour sélectionner la zone adjacente à A1 sans la ligne de titre Généralités sur le formatage !!! Soit une cellule formatée en %, si on y tape 1 et obtient 1%, comment y pallier . Les colonnes
Fonction sommeCouleurFond Accueil Somme Couleur fond Somme Couleur Fond avec couleur de référence Somme Couleur fond/texte Compte Couleur fond Compte Couleur fond/Texte Fonction sommeCouleurFond Cacule la somme des cellules d'un champ ayant la couleur de fond spécifiée - Somme Couleur Fond - Dans un module (Alt+F11 puis Insertion/Module) Function SommeCouleurFond(champ As Range, couleurFond) Application.Volatile Dim c, temp temp = 0 For Each c In champ If c.Interior.ColorIndex = couleurFond Then If IsNumeric(c.Value) Then temp = temp + c.Value End If Next c SommeCouleurFond = temp End Function -Lorsque la couleur de fond est modifiée, le résultat n'est pas mis à jour immédiatement (sauf si on utilisé le pinceau pour reproduide la mise en forme). Dim celluleAvant Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not IsEmpty(celluleAvant) Then If Not Intersect(Range(celluleAvant), [B2:G3]) Is Nothing Then Calculate End If celluleAvant = Target.Address End Sub Dans un module:alt+F11 puis Insertion/Module
Bernard Andruccioli - Site pédagogique - Tech de Co Bordeaux informatique > excel_fonctions_probabilites Muni de nombreuses et puissantes fonctions numériques, il n’est pas étonnant que ce Tableur (ainsi que ses concurrents) puisse faciliter le travail sur les différents aspects liés aux probabilités. Les outils liés aux calculs des probabilités : Factorielle 5! Arrangements Attention ! On saisit =PERMUTATION(5 ;3) et on obtient bien 20 qui correspond au nombre d’arrangements de 3 éléments pris parmi 5. ce qui donne Avec l’assistant fonctions : Combinaisons Pas de gros problèmes là non plus : il suffit de saisir =COMBIN(5;3) pour obtenir le nombre de combinaisons de 3 éléments parmi 5, soit 10 combinaisons. soit L’assistant fonctions permet d’obtenir la boîte de dialogue suivante, une fois la fonction repérée dans la liste de toutes les fonctions (ou des fonctions statistiques). Les lois de probabilités Ces fonctions ont un nom qui débutent toujours par le mot LOI, ce qui permet de les repérer assez facilement. Loi binomiale ce qui donne ici Loi de Poisson ).
Importer, exporter et lier des données entre Access et Excel - Access Il existe plusieurs façons de partager des données entre Access et Excel. Vous pouvez copier des données à partir d'une feuille de calcul (feuille de calcul : document principal utilisé dans Microsoft Excel pour traiter et stocker des données ; également appelé tableur. Une feuille de calcul est composée de cellules organisées dans des lignes et des colonnes et fait toujours partie d’un classeur.) ouverte et les coller dans une feuille de données Access, importer une feuille de calcul dans une base de données Access ou simplement charger une feuille de données Access dans Excel à l'aide de la commande Analyse avec Microsoft Office Excel. Cette rubrique explique en détail comment échanger des données entre Access et Excel en important ou en exportant des données ou encore en créant des liens vers ces données. Importer des données à partir d'Excel Créer un lien vers des données dans Excel Exporter des données Access vers Excel Résoudre les problèmes Importer des données à partir d'Excel