fonction pour remplir automatiquement des cellules

  • Initiateur de la discussion Initiateur de la discussion spockie
  • 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 !

S

spockie

Guest
Bonjour

J'ai besoin de votre aide s'il vous plait, je cherche désespérement depuis quelques heures ma solution, mais en vain.

Voila mon probleme :

J'ai quelques dizaines de fichiers et onglets excel sur lequel je dois faire apparaire les memes titres de colonne sur la ligne A.

Actuellement, chaque fichier contient que quelques titres de colonne.
Exemple fichier 1 : colonne "N", "M", "CD"
Exemple fichier 2 : colonne "N", "V", "A1"
J'ai en tout 17 titres de colonne à mettre sur chacun de ces fichiers

J'aimerais renseigné automatiquement les titres des colonnes qui ne sont pas déjà renseigné.
Exemple fichier 1 qui a pour l'instant 3 colonnes de renseigner : de la colonne 4 à la colonne 17, tous les titres manquants s'inscrivent automatiquement..

J'espere etre à peu pres clair dans ma problematique..

Je vous remercie par avance pour votre aide.

spockie
 
Re : fonction pour remplir automatiquement des cellules

Bonjour Spockie et bienvenue, Alex67800 🙂,
Tu parles de quelques dizaines de fichiers et onglets à traiter. Sachant que tu peux sélectionner tous les onglets de chacun de tes fichier (Clic sur le premier onglet et Maj+Clic sur le dernier et qu'à ce moment là, les modifications seront faites sur toutes les feuilles (un petit copier/coller par exemple...), tout cela ne représente que quelques manipulations à faire... Cela vaut-il le coup de développer une usine à gaz pour cela ?
Bonne journée 😎
 
Re : fonction pour remplir automatiquement des cellules

Re 🙂,
Sous réserve que l'ordre de tes colonnes soient toujours respecté, et que tes entêtes soient strictement identiques (incomplètes, ok, mais même désignation, même casse)
Code:
Sub Test()
If Range("A1") <> "A" Then
    Columns("A:A").Insert Shift:=xlToRight
    Range("A1") = "A"
End If
If Range("B1") <> "B" Then
    Columns("B:B").Insert Shift:=xlToRight
    Range("B1") = "B"
End If
If Range("C1") <> "C" Then
    Columns("C:C").Insert Shift:=xlToRight
    Range("C1") = "C"
End If
If Range("D1") <> "D" Then
    Columns("D:D").Insert Shift:=xlToRight
    Range("D1") = "D"
End If
If Range("F1") <> "F" Then
    Columns("F:F").Insert Shift:=xlToRight
    Range("F1") = "F"
End If
If Range("G1") <> "G" Then
    Columns("G:G").Insert Shift:=xlToRight
    Range("G1") = "G"
End If
If Range("H1") <> "H" Then
    Columns("H:H").Insert Shift:=xlToRight
    Range("H1") = "H"
End If
If Range("I1") <> "I" Then
    Columns("I:I").Insert Shift:=xlToRight
    Range("I1") = "I"
End If
If Range("J1") <> "J" Then
    Columns("J:J").Insert Shift:=xlToRight
    Range("J1") = "J"
End If
If Range("K1") <> "K" Then
    Columns("K:K").Insert Shift:=xlToRight
    Range("K1") = "K"
End If
If Range("L1") <> "L" Then
    Columns("AL:L").Insert Shift:=xlToRight
    Range("L1") = "L"
End If
If Range("M1") <> "M" Then
    Columns("M:M").Insert Shift:=xlToRight
    Range("M1") = "M"
End If
End Sub
où "A", "B", etc. sont à remplacer par tes entêtes.
Bonne journée 😎
 
Re : fonction pour remplir automatiquement des cellules

Merci JNP pour ton aide.

C'est presque mon bonheur🙂

le hic est que ma colonne au titre "B" par exemple peut etre en 3eme colonne par exemple et non en 2eme colonne.

Si je dois manuellement inserer des colonne vides pour respecter l'ordre prédéfini (colonne 1 : "A", colonne 2 :"B", etc), dans ce cas je n'ai pu qu'à remplir à la main les colonnes sans titre. Je reviens à mon probleme de départ...

Quid ?

Encore merci...
 
Re : fonction pour remplir automatiquement des cellules

Re 🙂,
Si tes colonnes sont dans le désordre, je ne suis pas sûr qu'on va s'en sortir. Le problème, c'est que tu va tourner en rond... Sinon, si elle sont dans l'ordre, éventuellement une suppression de toutes les colonnes sans entêtes ? Mais tu risque de perdre des données... Et si tes entêtes sont aussi "merdiques", j'ai des doutes sur le fait qu'elles correspondent lettres pour lettres, avec la casse voulue...
Si tu veux juste supprimer les colonnes :
Code:
Dim I As Integer
For I = 50 To 1 Step -1
If Cells(1, I) = "" Then Columns(I).Delete Shift:=xlToLeft
Next I
Bon courage 😎
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
932
Retour