Sommaire
Excel Perfectionnement
Excel Graphique
Divers Excel
Excel Vba début
Complément VBA
Utilitaires
Gestion
(philosophie)
Gestion
(techniques)
Liens
Utilitaires en Vrac
Gfc Windows

écrivrez-moi !














 

 

Entêtes et Pieds de Page

 

Mettre en entête le contenu d'une cellule

 

Problème : récupérer la valeur d'une cellule (ici A1 de la feuille 2) dans l'entête central de la feuille active.
Macro Commentaire
Sub EnteteValeur()
ActiveSheet.PageSetup.CenterHeader = _ Sheets("Feuil2").Range("A1").Text
End Sub

'affectation de l'entête central
A retenir : le PageSetup (mise en page) Préférer Text à Value surtout pour des nombres formatés

 

début                                         Sommaire

 

Bases Filtrées

 

Trouver le nombre d'enregistrements filtrées dans une colonne

 

Problème : Trouver le nombre d'enregistements filtrés dans la colonne de la cellule active même si cela n'est pas la colonne où est posée le filtre. Cette procédure a été corrigée par AV (merci à lui)
Macro Commentaire
Sub ValeurFiltre()
If ActiveSheet.AutoFilter Is Nothing Then
MsgBox " Pas de filtre"
Exit Sub
Else
Colonne = ActiveCell.EntireColumn.Address

nombre = Evaluate("subtotal(3," & Colonne & ")-1")

MsgBox ("nombre d'enregistrements présents : " & nombre)
End If
End Sub

'Test de l'existence d'un filtre

'Sortie de la procédure
'Si le filtre existe
'L'adresse de la colonne de la cellule active est récupérée du type B:B
'On utilise la fonction SOUS.TOTAL (3, ) et on retranche 1 (ligne de titre)
'Affiche le résultat
A retenir : le test sur l'existence du Filtre , la récupération de l'adresse de la colonne entière, l'utilisation de la fonction Sous.Total

début                                         Sommaire

 

Importation de Bases

 

Convertir une zone qui contient des chiffres mais qui est considérée comme du texte

 

Problème : Il arrive dans l'importation de bases que des chiffres soient considérés par Excel comme du texte et non des nombres.
Macro Commentaire
Sub Conversion()
On Error Resume Next
Dim Cellule As Range
For Each Cellule In Selection
Cellule.Value = Cellule.Value * 1
Next
End Sub

'Si erreur (type texte), on continue
variable
'Boucle sur toute la sélection en cours
'On multiplie par 1 la valeur trouvée
A retenir : cette technique de *1 alliée au On error resume next, évite d'utiliser les convertisseurs habituels Vba

début                                         Sommaire

Mesurez votre audience