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!
Oct 28 2022 02:37 PM
Oct 31 2022 02:57 PM
Bonsoir, une nouvelle fois, je sollicite votre sagacité pour une macro qui me hante. Voici un tableau, de la colonne FS à FY; FZ étant quelque chose que j'ai rajouté.
Les lignes vides correspondent à des enregistrements de la journée, mais qui n'ont pas donné lieu à paiement.
Je souhaiterais compacter ce tableau pour ne faire apparaître que les lignes "payantes".
J'ai imaginé une boucle qui utilise la colonne FZ pour sélectionner la ligne de tableau remplissant le critère, la copie et la colle dans un autre tableau, à la première ligne vide.
mais, ensuite, je ne sais pas comment faire pour la seconde ligne!
Je pense qu'il faut deux boucles imbriquées?
-----------------
Sub imprjourecet_vb()
'
' imprjourecet_vb Macro
' mettre en forme et imprimer le journal de recette
'
'
Range("FZ14").Select
Do While ActiveCell = 0
ActiveCell.Offset(1, 0).Activate
Loop
ActiveCell.Offset(0, -14).Select
Range(ActiveCell, ActiveCell.Offset(0, 6)).Select
Selection.Copy
End Sub
-------------------
FS | FT | FU | FV | FW | FX | FY | FZ |
DATE | ESPECES | CHEQUE | CB | TOTAL JOUR | ABONNEMENTS | IMPRESSIONS | |
1 |
| 20,00 € |
|
|
|
| 20 |
1 |
|
|
|
|
|
| 0 |
1 | 2,60 € |
|
|
|
|
| 2,6 |
1 |
|
|
|
|
|
| 0 |
1 | 20,00 € |
|
|
|
|
| 20 |
1 | 20,00 € |
|
|
|
|
| 20 |
1 |
| 20,00 € |
|
|
|
| 20 |
1 |
|
|
|
|
|
| 0 |
1 |
|
|
|
|
|
| 0 |
1 |
|
|
|
|
|
| 0 |
1 |
| 20,00 € |
|
|
|
| 20 |
1 | 0,20 € |
|
|
|
|
| 0,2 |
1 |
|
|
|
|
|
| 0 |
1 |
|
|
|
|
|
| 0 |
1 | 20,00 € |
|
|
|
|
| 20 |
1 | 0,40 € |
|
|
|
|
| 0,4 |
1 | 1,20 € |
|
| 124,40 € | 120,00 € | 4,40 € | 250 |
4 | 0,20 € |
|
|
|
|
| 0,2 |
Je sais le faire en XLM4, mais pas là!
D'avance, merci!
Oct 31 2022 03:49 PM
Essayez
Sub CopierLignesNonVides()
Const LignePremiere = 14
Const ColonneSource = "FZ"
Const ColonneDestination = "FL"
Dim LigneSource As Long
Dim LigneDerniere As Long
Dim LigneDestination As Long
Application.ScreenUpdating = False
LigneDestination = LignePremiere
LigneDerniere = Cells(Rows.Count, ColonneSource).End(xlUp).Row
For LigneSource = LignePremiere To LigneDerniere
If Cells(LigneSource, ColonneSource).Value > 0 Then
Cells(LigneDestination, ColonneDestination).Resize(1, 7).Value = _
Cells(LigneSource, ColonneSource).Offset(0, -7).Resize(1, 7).Value
LigneDestination = LigneDestination + 1
End If
Next LigneSource
Application.ScreenUpdating = True
End Sub
Nov 01 2022 02:59 PM
Nov 01 2022 03:22 PM
Ce n'est pas si grave! 🙂
Nov 07 2022 01:57 PM
Nov 07 2022 02:12 PM
Essayez
Application.ScreenUpdating = True
ActiveCell.Offset(0, -25).Activate
Selection.Interior.Color = 5756927
If MsgBox("Ce nom correspond-t-il à votre recherche? Si non, cliquez sur Non pour continuer!", _
vbYesNo, "État de la recherche") = vbYes Then
Exit Sub
End If
Selection.Interior.ColorIndex = xlColorIndexNone
Nov 18 2022 02:55 AM
Nov 18 2022 03:28 AM
Une solution possible:
If condition = True
...
...
End If
...
...
Une autre:
If condition = True
...
...
Else
...
...
End If
Ou bien
If condition = False Then GoTo EtapeSuivante
...
...
EtapeSuivante:
...
...
Nov 18 2022 03:37 AM
Dec 01 2022 02:00 PM
Dec 01 2022 02:08 PM
Excusez-moi, je ne comprends pas ce que vous voulez qu'il se passe.
Dec 02 2022 01:13 AM
Désolé, je n'ai pas été très clair!
En fait, il est primordial, pour le bon déroulement de ma macro, que la cellule active soit positionnée sur "espèces"... (car la macro utilise la valeur de la case à gauche.)
Dec 02 2022 03:06 AM
C'est effectué par la ligne Exit Sub, n'est ce pas?
Dec 02 2022 06:42 AM
Dec 02 2022 06:49 AM
Si la cellule active ne contient pas 'espèces', le macro est terminé. C'est ce que voulez, n'est-ce pas?
Dec 02 2022 08:43 AM
Dec 02 2022 09:25 AM