ecrire automatiquement dans une cellule en fonction d'une autre

  • Initiateur de la discussion Initiateur de la discussion clichy
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

clichy

XLDnaute Junior
bonsoir à tous,

je vous remercie pour cet espace d'apprentissage et de partage de connaissance...

voici mon problème:
j'ai besoin de mettre une formule dans une cellule si et seulement si une autre cellule est remplie d'un texte.
je m'explique..
il s'agit d'un fichier de reporting et les lignes se remplissent au fur et à mesure du temps, il me faut donc un systeme pour remplir mes lignes que quand les cellules sont remplies
je sais le faire avec des formules en remplissant d'avance le tableau mais cela n'est pas idéal car je ne sais pas combien il y aura de lignes en tout
je sais qu'avec une macro qui s'active lorsque la cellule est pleine c'est possible mais je ne maitrise pas encore...


avec l'exemple ci joint, cela sera plus clair

merci d'avance a vous
 

Pièces jointes

Re : ecrire automatiquement dans une cellule en fonction d'une autre

Bonsoir,

Formule en A2 : tirer vers le bas.

En D2 : =SI(A2="";"";SI(ESTERREUR(INDIRECT(CONCATENER("'";pilote!$E$2;"'";;"!";"E4")));0;INDIRECT(CONCATENER("'";pilote!$E$2;"'";;"!";"E4"))))

excfl
 
Dernière édition:
Re : ecrire automatiquement dans une cellule en fonction d'une autre

re bonjour,

sur un autre fil, j'ai trouvé ce code qui s'approche de ce que je veux faire.
cependant, je cherche a faire cette action en auto et non par un bouton

je vous remercie


Code:
Sub Archivage()
    With Feuil3
        .Rows("8:8").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrBelow
        .Range("B8").FormulaLocal = "='" & ActiveSheet.Name & "'!F2"
        .Range("C8").FormulaLocal = "='" & ActiveSheet.Name & "'!H7"
        .Range("D8").FormulaLocal = "='" & ActiveSheet.Name & "'!H8"
        .Range("E8").FormulaLocal = "='" & ActiveSheet.Name & "'!H9"
        .Range("F8").FormulaLocal = "='" & ActiveSheet.Name & "'!N11"
        .Range("G8").FormulaLocal = "='" & ActiveSheet.Name & "'!H28"
        .Range("H8").FormulaLocal = "='" & ActiveSheet.Name & "'!H27"
        .Range("I8").FormulaLocal = "='" & ActiveSheet.Name & "'!H29"
        .Range("J8").FormulaLocal = "='" & ActiveSheet.Name & "'!J28"
        Range("A1").Select
        .Activate
    End With

code extrait de ce fil https://www.excel-downloads.com/thr...-partir-a-partir-de-plusieurs-onglets.207424/
 
Re : ecrire automatiquement dans une cellule en fonction d'une autre

re-
en attendant mieux, j'ai adapté ce code sur un bouton obligatoire de mon onglet créé. ce bouton sert à imprimer l'onglet.
cependant, a chaque clic pour impression, le code génére une nouvelle ligne > normal, c'est ce qu'on lui demande.

comment brider le code pour qu'il ne génère qu'une seule fois et qu'après il se mette en veille?

je vous remercie
 
Re : ecrire automatiquement dans une cellule en fonction d'une autre

re-

bon alors...
en fait c'était une bonne idée mais ca ne va pas.
en venant rajouter une ligne, ca me décale les coordonnées de mon tableaux et les nouvelles données ne sont pas prises en compte car en dehors des références du tableaux.
du coup, je continue à chercher et j'ai trouvé!!!...


voici le code
Code:
dim nom_onglet as string
nom_onglet = range ("d3")
Sheets("bilan").Select
Sheets("bilan").Range("a3").Select
If Sheets("bilan").Range("a3").Value <> "" Then Sheets("bilan").Range("A3").End(xlDown).Select
ActiveCell.Offset(1, 0).Select
    ActiveCell.Offset.Value = "='" & nom_onglet & "'!M1" 'nom
    ActiveCell.Offset(0, 1).Value = "='" & nom_onglet & "'!p1" 'date
    ActiveCell.Offset(0, 2).Value = "='" & nom_onglet & "'!O1" 'nom onglet
    ActiveCell.Offset(0, 3).Value = "='" & nom_onglet & "'!P4" 'total
    ActiveCell.Offset(0, 4).Value = "='" & nom_onglet & "'!Q4" 'envirronement du mag
    ActiveCell.Offset(0, 5).Value = "='" & nom_onglet & "'!R4" 'extérieur du mag
    ActiveCell.Offset(0, 6).Value = "='" & nom_onglet & "'!S4" 'intérieur du mag
    ActiveCell.Offset(0, 7).Value = "='" & nom_onglet & "'!T4" 'accueil
    ActiveCell.Offset(0, 8).Value = "='" & nom_onglet & "'!U4" 'acte de vente
    ActiveCell.Offset(0, 9).Value = "='" & nom_onglet & "'!V4" 'monture & verres
    ActiveCell.Offset(0, 10).Value = "='" & nom_onglet & "'!W4" 'devis
    ActiveCell.Offset(0, 11).Value = "='" & nom_onglet & "'!X4" 'objection
    ActiveCell.Offset(0, 12).Value = "='" & nom_onglet & "'!Y4" '2ème paire
    ActiveCell.Offset(0, 13).Value = "='" & nom_onglet & "'!Z4" 'prise de congés
    ActiveCell.Offset(0, 14).Value = "='" & nom_onglet & "'!C4" 'point fort 1
    ActiveCell.Offset(0, 15).Value = "='" & nom_onglet & "'!C7" 'point fort 2

mes données s'incrémentent à la fin de mon tableau et tt va bien

je vous remercie de votre aide
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour