Oct 13 2022 01:20 AM
Dans une macro, je veux donner un nom à une cellule donnée, à savoir celle où je suis au lancement de la macro.
si je laisse "range", avec des références absolues, la macro fonctionne, mais une seule fois. Le nom choisi disparait de la liste de la feuille, mais est toujours présent dans les noms de "formule-gestionnaire de noms".
voici ce que j'ai écrit, qui ne fonctionne pas:
ActiveWorkbook.Names.Add Name:="horo4", RefersToR1C1:=ActiveCell.Address
Merci de m'aider!
Dec 02 2022 12:39 PM
Dec 02 2022 02:00 PM
LCase convertit une texte en miniscules.
"Espèces" n'est pas égal à "espèces", mais LCase("Espèces") est égal à "espèces".
Dec 02 2022 02:24 PM
Dec 15 2022 02:51 PM
Dec 15 2022 02:59 PM
Serait-il possible de stocker le classeur sauvjr.xlsx dans le même dossier que le classeur de macro? Si oui, vous pourriez utiliser:
Workbooks.Open Filename:=ThisWorkbook.Path & "\sauvjr.xlsx"
Dec 15 2022 03:05 PM
Jan 12 2023 06:47 AM
Jan 12 2023 08:14 AM
Essayez
Sub tricheqnomch()
Dim m As Long
' tricheqnomch Macro
' trie les chèques par titulaire
Application.ScreenUpdating = False
MsgBox "Ceci va trier les chèques par nom du titulaire du chèque, puis par montant décroissant, enfin par jour.", , "Tri par nom"
m = Range("AHN:AHS").Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Range("AHN8:AHS" & m).Sort _
Key1:=Range("AHN8"), Order1:=xlAscending, _
Key2:=Range("AHQ8"), Order2:=xlDescending, _
Key3:=Range("AHP8"), Order3:=xlAscending, _
Header:=xlYes
Application.ScreenUpdating = True
End Sub
Jan 12 2023 02:16 PM
Jan 12 2023 03:34 PM
Non - quelle erreur?
Jan 13 2023 01:08 AM
Jan 13 2023 04:50 AM
Sub tricheqnomch()
Dim m As Long
' tricheqnomch Macro
' trie les chèques par titulaire
Application.ScreenUpdating = False
MsgBox "Ceci va trier les chèques par nom du titulaire du chèque, puis par montant décroissant, enfin par jour.", , "Tri par nom"
m = Range("AHN:AHS").Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Range("AHN8:AHS" & m).Sort _
Key1:=Range("AHP8"), Order1:=xlAscending, _
Key2:=Range("AHQ8"), Order2:=xlDescending, _
Key3:=Range("AHN8"), Order3:=xlAscending, _
Header:=xlYes
Application.ScreenUpdating = True
End Sub
May 12 2023 02:31 AM
Bonjour, cela faisait longtemps!
Nouveau souci:
---------------
Application.ScreenUpdating = True
ActiveCell.Offset(0, -14).Activate
If ActiveCell = pretmax Then
MsgBox "Quota autorisé dépassé!", , "Anomalie"
Exit Do
End If
----------
Je voudrais que ce message s'affiche lorsque la valeur de la cellule active soit identique à celle stipulée dans la cellule nommée pretmax...
Or le message s'affiche systématiquement!
Autre pb dont je vous ai déjà parlé: lorsque j'exécute une macro en pas à pas (F8), seule la feuille macro apparaît; je suis obligé d'aller systématiquement dans la feuille principale pour suivre le déroulement. Ceci n'était pas le cas dans les macros excel4, où l'on restait sur la feuille principale!
Je ne sais pas si je suis très clair?
Merci!
B. DANIEL
May 12 2023 02:36 AM
Pourriez-vous poster la macro complète?
Pour afficher à la fois le code et la feuille de calcul, vous pouvez organiser la fenêtre Excel et la fenêtre Visual Basic Editor côte à côte.
May 12 2023 12:31 PM
May 26 2023 02:32 PM
May 26 2023 02:40 PM
Au-dessus de la ligne qui enregistre la copie, insérez
Application.DisplayAlerts = False
Et en dessous, insérez
Application.DisplayAlerts = True
Oct 27 2023 02:02 AM
Oct 27 2023 02:23 AM
En dessous de la ligne Application.Undo, insérez
Application.ScreenUpdating = True