Fusion de cellules dans VBA

Bonjour à tous,

Ayant suivi les cours VBA, merci à Sébastien, j'ai repris le planning proposé qui est bien pratique.

Je rencontre une difficulté : je souhaite fusionner 2 cellules pour 1 journée et que la succession des journées se fasse correctement. Ex : le 1er janvier sur les cellules A3 et A4, le 2 janvier sur A5 et A6 etc...

J'ai tenté plusieurs manips mais la fusion des cellules n'est pas prise en compte ce qui amène au résultat que vous pouvez constater, on a 1 jour sur 2.

Pourriez vous m'aider s'il vous plait ?

Je vous remercie.

(Ci joint le modèle original et la version modifiée)

Bonjour,

lorsque tu fusionnes des cellules tu es averti que seule la 1ère sera conservée et les autres perdues.

Inscris tes jours 1 ligne sur 2 avant de fusionner.

Comme il est déjà fait insère une ligne après chaque jour. (boucle For .... step -1 en partant du bas)

eric

Merci Eriiic,

Je crois que ça vient de cette commande et notamment de la ligne en bleu.

'Boucle JOURS

For jour = 1 To nb_jours

date_du_jour = DateSerial(annee, mois, jour)

Cells(jour + 2, colonne) = date_du_jour

L'idée serait que pour chaque jour soit *2 en plus du +2. Mais je ne sais pas si c'est possible...

Bonjour,

'Boucle JOURS
lig1=2 'ligne du 1er jour
For jour = 1 To nb_jours
    date_du_jour = DateSerial(annee, mois, jour)
    Cells((jour -1) *  2 + lig1, colonne) = date_du_jour

Comme tu débutes, tu devrais prendre de bonnes habitudes : déclarer et typer toutes tes variables.

Dans VBE Outils / Options cocher 'Déclaration obligatoire des variables

Ca t'ajoutera Option Explicit en tête de tous tes nouveaux modules (le mettre manuellement sur les anciens)

Ca t'évitera les erreurs très difficile à trouver comme une erreur dans le nom.

Et tu en profites pour les typer ce qui rend le code plus rapide, les Variant étant plus lents.

Dim lig1 as Long, jour as Long

eric

Merci pour tes conseils Eriiic, on est sur la bonne voie.

Maintenant j'essaie de fusionner 1 jour sur 2 lignes sur tout le planning (ex C3 sur C3 et C4).

Je bidouille un peu en me disant que je vais bien y arriver.

Penses tu que la commande Mergecells soit appropriée dans ce cas ? je m'y prends certainement mal car ça ne fonctionne pas.

Prend l'habitude aussi de faire F1 sur une propriété ou méthode que tu ne connais pas.

Tu verras tout de suite que ce n'est pas ça, à quoi ça sert, son fonctionnement et ses cas particuliers (souvent le plus important)

eric

Rechercher des sujets similaires à "fusion vba"