VB Remplissage automatique cellule
Ferméyg_be Messages postés 22760 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 mai 2024 - 5 janv. 2023 à 13:57
- VB Remplissage automatique cellule
- Message automatique thunderbird - Guide
- Vb cable - Télécharger - Audio & Musique
- Vb - Télécharger - Langages
- Aller à la ligne dans une cellule excel - Guide
- Réponse automatique outlook - Guide
3 réponses
3 janv. 2023 à 17:29
Bonjour,
Encore faudrait-il savoir dans quelles Feuilles, dans quelles cellules
Un p’tit classeur avec 10/15 données anonymisées serait mieux pour régler le soucis
Allez dans http://cjoint.com
Cliquez sur "PARCOURIR" pour sélectionner le classeur
Clic le bouton "CREER LE LIEN"
Clic droit quand le lien est créé "COPIER LE LIEN"
Sur le post Clic droit "Coller".
Bonsoir,
Merci pour votre retour.
ci-joint le lien de mon fichier
https://www.cjoint.com/c/MAdsEqCBiwa
Ma question c'est de créer une macro qui puisse me permettre de remplir automatiquement les cellules vides.
J'ai trouvé un début de macro :
Sub FillEmptyBlankCellWithValue()
Dim cell As Range
Dim InputValue As String
On Error Resume Next
InputValue = InputBox("Enter value that will fill empty cells in selection", _
"Fill Empty Cells")
For Each cell In Selection
If IsEmpty(cell) Then
cell.Value = InputValue
End If
Next
End Sub
Elle me permet effectivement de remplir automatiquement les cellules SELECTIONNEES.
Mon idées c'est de créer un bouton commande lié à cette macro.
Mais j'aimerais modifier cette macro pour qu'elle remplisse des cellules spécifiques.
A savoir pour la feuille :
- 'JANV' les cellules D5:AH56.
- 'FEV' les cellules D5:AE57
Et ainsi de suite jusqu'à décembre.
Peut-être créer une macro par feuilles ?
Merci d'avance pour votre aide
Modifié le 3 janv. 2023 à 20:04
bonjour,
à tout hasard:
private sub zerovide(rg as range) dim cl as range for each cl in rg if cl = "" then cl=0 end if next cl end sub sub makro call zerovide(sheets("JANV").[D5:AH56]) call zerovide(sheets("FEV").[D5:AE57]) end sub
5 janv. 2023 à 11:15
Bonjour,
Je vous remercie encore pour votre aide pour le code. Aujourd'hui je suis bloquée sur deux autres points.
J'ai réussi à créer une macro qui me permets de créer un nouveau classeur "copie" du 1er.
Le ik c'est qu'il n'est pas vierge.
J'aimerai donc incrémenter dans la macro une "consigne" pour qu'il créer la copie du classeur vierge sur dans les feuilles suivantes :
Sheets("JANV").[D5:AH57]) et ainsi de suite jusqu'à décembre.
Le deuxième point sur lequel je suis bloquée, j'aimerai incrémenter une Msgbox dans votre code ci-dessous du style :
MsgBox("Etes-vous certain de vouloir mettre à jour votre classeur?",vbinformation+vbYesNoCanel,"demande de confirmation")
Le ik c'est qu'il me remplit quand même les feuilles malgré que je clique sur non ou annuler.
Pouvez-vous m'aider ?
En vous remerciant par avance
5 janv. 2023 à 12:50
Je ne comprends pas ce que tu appelles "incrémenter". Peut-être veux-tu dire "ajouter"?
Si tu demandes de l'aide à propos d'un code, il est utile de nous montrer ce code. Ceci explique comment bien partager du code: https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
5 janv. 2023 à 13:44
Merci pour votre retour.
Oui je veux ajouter.
Ci-dessous le code me permettant de créer une copie du fichier.
Sub NewWorkbook() Dim wbk As Workbook Dim Model As String Model = "D:\EXCEL\JAUGE RICOH ASSO.xlsm" Application.DisplayAlerts = False ActiveWorkbook.SaveAs Filename:="D:\EXCEL\new.xlsm" Application.DisplayAlerts = True ' ' NewWorkbook Macro ' End Sub
Depuis mon post ce matin j'ai trouvé ce bout de code pour effacer les données souhaitées . Il fonctionne, mais que sur la feuille active. Je ne parviens pas à le généraliser à l'ensemble du classeur.
Sub effacer() If MsgBox("Etes-vous certain de vouloir supprimer le contenu ?", vbYesNo, "Demande de confirmation") = vbYes Then Sheets("MARS").Range("D5:AG57").ClearContents Sheets("AVRIL").Range("D5:AF57").ClearContents Sheets("MAI").Range("D5:AG5").ClearContents Sheets("JUIN").Range("D5:AF57").ClearContents MsgBox "Le contenu a été effacé !" End If End Sub
En vous remerciant pour votre aide.
Ps: Connaissez-vous un site pour apprendre le VB ?
Modifié le 5 janv. 2023 à 14:10
Pour le premier code: peut-être ouvrir le nouveau fichier, et y nettoyer chacun des onglets?
Pour le second, je suis perplexe, pourrais-tu partager ton fichier?
Je n'ai pas d'idée d'un site pour apprendre VB. Si le contexte est Excel, peut-être une recherche "apprendre VBA Excel"?