Forum Discussion
macro VBA excel nommer une cellule
- Oct 16, 2022
Peut-être:
Dim s As String Dim reto As Range Set reto = Selection Do s = InputBox("Scannez le document, puis cliquez sur 'OK'; en fin de série, cliquez sur OK! ", " Enregistrement du retour ") If s = "" Then Exit Do Application.Goto Reference:="codbarretour" Do While ActiveCell > 0 ActiveCell.Offset(1, 0).Activate Loop reto.Select reto.Formula = s ActiveCell.Offset(0, 10).Activate Range(ActiveCell, Range("chrono")).Select Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues ActiveCell.Offset(0, -12).Activate Loop
Peut-être
s = InputBox("Modifiez le mois!", " Enregistrement du retour ", Cells(3, 6).FormulaR1C1Local)
Ou bien??
s = InputBox("Tapez le mois comme mmaaaa", " Enregistrement du retour ", Format(Date, "mmyyyy"))
Range("F3").FormulaR1C1 = _
"='[acredit m.xlsm]CB 36048 00010074603 # " & s * "'!R[3]C1"
Range("A4").Select
j'ai donc tapé ceci:
------------------------
Application.ScreenUpdating = False
MsgBox "Ceci va actualiser les données en provenance de acredit.Pour les cartes bancaires, le correctif est fixé sur 11 (novembre). Pour l'actualiser, modifiez le en case A4, puis cliquez sur 'MAJ'(dans 'import crédit m')."
Application.Goto Reference:="arriveecb"
Range("F3").Select
ActiveCell.FormulaR1C1 = _
"='[acredit m.xlsm]CB 36048 00010074603 # 112022'!R[3]C1"
Range("A4").Select
Dim s As String
s = InputBox("Tapez le mois comme mmaaaa", " Modification du mois ", Format(Date, "mmyyyy"))
Range("F3").FormulaR1C1 = _
"='[acredit m.xlsm]CB 36048 00010074603 # " & s * "'!R[3]C1"
Range("A4").Select
Range("B4").Select
-----------------------------------
J'ai une erreur d'exécution 13 au niveau de:
Range("F3").FormulaR1C1 = _
"='[acredit m.xlsm]CB 36048 00010074603 # " & s * "'!R[3]C1"
J'ai dû mal reproduire quelque chose, mais je ne vois pas quoi!
- HansVogelaarAug 29, 2024MVP
Désolé, mais je ne comprends pas recupsauv du tout.
- bernard_daniel_1950Aug 29, 2024Iron Contributor
Bonsoir,
Me revoilà…
J’ai un souci avec l’instruction : options de sauvegarde.
Elle ouvre une userform dans laquelle il y a une liste déroulante de dates.
Quel que soit le choix, la date retenue est toujours la première dans la macro « recupsauv ».
Où est l’erreur ?
Je vous transmets le fichier (sosdecalogy).
Merci d’avance pour votre aide !
- DANIEL
- bernard_daniel_1950May 26, 2024Iron ContributorUne fois de plus: merci!
- HansVogelaarMay 26, 2024MVP
Bien sûr, par exemple changez
Range("AG2").Select
ActiveCell.FormulaR1C1 = _
"='C:\Users\bernd\OneDrive\Desktop\Maison\[acredit m.xlsx]CB 36048 00010074603 # 062024'!R[2]C[-32]"à
Range("AG2").FormulaR1C1 = _
"='C:\Users\bernd\OneDrive\Desktop\Maison\[acredit m.xlsx]CB 36048 00010074603 # " & Range("Z50").Value & "'!R[2]C[-32]"Z50 est la cellule contenant la valeur.
- bernard_daniel_1950May 26, 2024Iron Contributor
Bonsoir,
dans la macro suivante:
----------------------
Sub reporcartes()
'
' reporcartes Macro
''
Range("AG2").Select
ActiveCell.FormulaR1C1 = _
"='C:\Users\bernd\OneDrive\Desktop\Maison\[acredit m.xlsx]CB 36048 00010074603 # 062024'!R[2]C[-32]"
Selection.Copy
Range("AG4:AI91").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("AG2").Select
Application.CutCopyMode = False
End Sub------------------
est il possible de donner à la valeur 06024 celle d'une cellule de la feuille?
D'avance merci!
- HansVogelaarMay 23, 2024MVP
Probablement pas, j'en ai peur
- bernard_daniel_1950May 22, 2024Iron ContributorEncore merci; étourderie de ma part!
Question que je vous pose à tout hasard: est il possible à une macro Excel d'agir sur un programme autre que Microsoft?
Je copie une donnée dans Excel et voudrais la copier dans un programme qui n'a rien à voir.
Je fais actuellement clic droit et coller, mais si je pouvais automatiser... - HansVogelaarMay 10, 2024MVP
Le "listbox" sur Choixsauv est nommé ListBox1, pas listsauve
Sub recupsauv() Application.ScreenUpdating = False 'If MsgBox("Ceci va récupérer une journée enregistrée.", vbOKCancel, "Récupération de journée") = vbCancel Then 'Exit Sub 'End If Application.Goto Reference:="grille2" Selection.Copy Application.Goto Reference:="date" ActiveSheet.Paste Application.CutCopyMode = False Dim d As String If Choixsauv.ListBox1.ListIndex > -1 Then d = Format(Choixsauv.ListBox1, "dd/mm/yyyy") End If Application.Goto Reference:="sauvegarde" Do While ActiveCell <> d ActiveCell.Offset(1, 0).Activate If ActiveCell.Value = 99999 Then MsgBox "Cete date n'existe pas!", , "Echec" Application.ScreenUpdating = True Range("a1").Select Exit Sub End If Loop ActiveWorkbook.Names.Add Name:="debrec", RefersTo:=ActiveCell ActiveCell.Offset(1, 0).Select Do While ActiveCell.Value = "" ActiveCell.Offset(1, 0).Select Loop ActiveCell.Offset(-1, 6).Select Range(ActiveCell, Range("debrec")).Select Selection.Copy Range("date").Select ActiveSheet.Paste Application.CutCopyMode = False MsgBox "Journée du " & d & " récupérée! vous pouvez désormais transférer les données à Decalog." End Sub
- bernard_daniel_1950May 10, 2024Iron Contributor
Bonsoir,
j'ai un souci avec ce que vous m'avez envoyé, qui, pourtant, marchait très bien!
Voici le message:Je joins le fichier. le problème se situe dans la macro recupsauv (surligné).
Merci encore!
- bernard_daniel_1950Apr 28, 2024Iron ContributorMerci!
- HansVogelaarApr 28, 2024MVP
Quand une zone de texte est liée à une cellule, la valeur de la cellule est identique à la valeur de la zone de texte. Ainsi, la cellule contient une valeur, pas une formule...
- bernard_daniel_1950Apr 28, 2024Iron ContributorOui, merci, ça marche!
Mais pourquoi ne peut on pas utiliser l'autre méthode (cellules liées)?
Juste pour mon info personnelle! - HansVogelaarApr 27, 2024MVP
Ici un exemple très simple.
- bernard_daniel_1950Apr 27, 2024Iron ContributorEuh... Pourriez vous être plus explicite?
Un exemple? - HansVogelaarApr 27, 2024MVP
C'est normal. Pour éviter cela, ne liez pas les zones de texte aux cellules, mais utilisez VBA pour transférer les valeurs entre les zones de texte et les cellules.
- bernard_daniel_1950Apr 27, 2024Iron ContributorBonjour,
Je rencontre un phénomène étrange (du moins pour moi!):
si je rentre dans des userforms (boutons...) des cellules liées contenant des formules, celle ci sont parfois "écrasée" lors de l'utilisation des uforms (la formule se transforme en valeur!).
Pour être clair, si j'ai: =2=2 en formule, ça se transforme en : 4!
Est-ce "normal", ou y a t-il quelque chose à faire?
Ou alors le problème vient d'ailleurs? - bernard_daniel_1950Apr 25, 2024Iron ContributorEncore merci...
J'ai plusieurs userforms où l'ordre "unload" précède le "call", sans problème?
J'ai shunté la phase "inputbox... " pour entrer directement d dans la macro! - HansVogelaarApr 24, 2024MVP
Problème 1 : vous déchargez le userform avant d'appeler RecupSauv, donc la valeur de la listbox n'existe plus. Solution:
Private Sub recupération_Click() Call recupsauv Unload Me End Sub
Problème 2 : afficher correctement la date. Solution:
Dim d As String If Choixsauv.Listsauve.ListIndex > -1 Then d = Format(Choixsauv.Listsauve, "dd/mm/yyyy") End If s = InputBox("entrez la date désirée, sous la forme 'jj/mm'.", _ "Recherche de journée sauvegardée", d)
- bernard_daniel_1950Apr 24, 2024Iron Contributor
Le flux commence par le bouton "options de sauvegarde", à droite...
- HansVogelaarApr 24, 2024MVP
Je voudrais voir le classeur...
- bernard_daniel_1950Apr 24, 2024Iron ContributorC'est fait.
Maintenant, le programme me dit "vous devez choisir une date"... - HansVogelaarApr 24, 2024MVP
- bernard_daniel_1950Apr 24, 2024Iron Contributor
- HansVogelaarApr 23, 2024MVP
s = InputBox("entrez la date désirée, sous la forme 'jj/mm'.", " Recherche de journée sauvegardée", Me.Listbox1)
où ListBox1 est le nom de la zone de liste.
- bernard_daniel_1950Apr 23, 2024Iron Contributor
Bonsoir, j'ai encore besoin de vos lumières!
J'ai créé cette userbox:
et cette macro (un extrait):
Sub recupsauv()
...
Dim s As Date
On Error Resume Next
s = InputBox("entrez la date désirée, sous la forme 'jj/mm'.", " Recherche de journée sauvegardée")
If Err Then
MsgBox "Vous devez rentrer une date!", vbExclamation
Exit Sub
End If
On Error GoTo 0
Application.Goto Reference:="sauvegarde"
Do While ActiveCell <> s
ActiveCell.Offset(1, 0).Activate...
J'aurais voulu que, en choisissant une date donnée dans l'userform, elle soit sélectionnée dans l'input box, ou directement dans la macro...
J'espère être assez clair...
Merci!