IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Transformer un calendrier (mise en forme) [XL-2010]


Sujet :

Macros et VBA Excel

  1. #21
    Membre éclairé Avatar de Nako_lito
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2008
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 793
    Points : 827
    Points
    827
    Par défaut
    38 lignes !!!!

    (Je rigole). . l'important ayant été de débloquer QuestVBA
    - La dernière fois que j'ai testé ca fonctionnait !
    - Vous n'avez rien modifié ?
    - Non ! Je suis pas idiot non plus.
    - ....
    - Enfin si, juste le fichier .dll, mais a 4Ko, ca devait pas être important.

  2. #22
    Membre expert Avatar de QuestVba
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2012
    Messages
    2 477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 2 477
    Points : 3 864
    Points
    3 864
    Par défaut
    Bonjour, patricktoulon,

    Bon ben je coince sur un truc car il me crée bien une nouvelle feuille mais après le traitement elle est toute blanche. Rien de visible ???

    Nom : Transposé.PNG
Affichages : 147
Taille : 194,5 Ko

  3. #23
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    tu a du zapper quelque chose

    prend le fichier il y a les deux dernières versions dans le module
    Fichiers attachés Fichiers attachés
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  4. #24
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re
    nako_lito

    seules les 18 premières lignes sont le moteur
    le reste c'est du superflu(ajout du sheet ,mise en forme des cellules(bordures , alignement ,etc.....)
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #25
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    salut questvba

    d'après l'idée de ma double boucle j'ai revue la copie

    maintenant la méthode est infaillible
    on gère les jour du mois précèdent et les jour du mois suivant
    pour cela j'ai utiliser 2 dico :dicosujet pour les titre en colonne A:dicodate pour les dates
    le reste est resté relativement pareil sauf que les colonne sont gérées par la variable "coltab"

    aucune erreur possible

    un exemple de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    Option Base 1
    Sub tableau_transposé_V4()
        Dim dicosujet, lig As Integer, col As Integer, coltab As Long, i As Long, tablo(1000, 100), e As Long
        Set dicosujet = CreateObject("Scripting.Dictionary"): Set dicodate = CreateObject("Scripting.Dictionary")
        With Sheets(1)
            For lig = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
                For col = 3 To .Cells(1, Columns.Count).End(xlToLeft).Column
                If Not dicosujet.exists(.Cells(lig, 1).Value) Then i = i + 1: dicosujet(.Cells(lig, 1).Value) = i: tablo(i, 1) = .Cells(lig, 1).Value
                    If .Cells(lig, 1).Value Like "*Traitement ITINP" = True Then
                        oldlig = .Cells(lig, col).Row
                        If Not dicodate.exists(.Cells(lig, col).Value) Then
                            coltab = coltab + 1: dicodate(.Cells(lig, col).Value) = coltab + 1
                            tablo(1, coltab + 1) = Val(.Cells(lig, col).Value)
                        End If
                    Else
                        tablo(dicosujet(.Cells(lig, 1).Value), dicodate(.Cells(oldlig, col).Value)) = IIf(Sheets(1).Cells(lig, col) <> "", "X", "")
                    End If
                Next col
            Next lig
     
        End With
        '*******************************************************************************************************************************************
        ' le boulot est fini on envoie le tableau dans un nouveau sheet
        With Sheets.Add(After:=Sheets(Sheets.Count))
            .Name = "tableau-transposé": .Columns("A:A").ColumnWidth = 35: .Columns("B:BG").ColumnWidth = 4: .Columns("A:A").WrapText = True
            .Cells(1, 1).Resize(i, coltab + 1) = tablo
            With .Cells(1, 1).Resize(i, coltab + 1)
                .HorizontalAlignment = xlCenter
                .Cells(1, 1).Resize(UBound(tablo), coltab + 1).VerticalAlignment = xlCenter
                .Borders(xlEdgeLeft).LineStyle = xlContinuous: .Borders(xlEdgeTop).LineStyle = xlContinuous
                .Borders(xlEdgeRight).LineStyle = xlContinuous: .Borders(xlInsideVertical).LineStyle = xlContinuous
                .Borders(xlInsideHorizontal).LineStyle = xlContinuous
                With ActiveWindow
                    .SplitColumn = 0
                    .SplitRow = 1
                    .FreezePanes = True
                End With
            End With
        End With
        '********************************************************************************************************************************************
    End Sub
    toujours pareil la mise en forme des cellules est plus longue que le reste

    je l'ai tester dans tout les sens
    en rajoutant des colonnes ,doublons etc.....
    on obtiens toujours un tableau avec autant de colonnes que de dates (dans l'ordre biensur )
    et aucun doublons dans la colonne A
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [MySQL] javascript calendrier & mise en forme conditionnelle
    Par hugodu28 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 25/01/2014, 15h05
  2. [XL-2000] Transformation de la mise ne forme Excel en balise HTML
    Par ben_ghost dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 03/06/2009, 15h43
  3. mise en forme des couleurs des calendriers
    Par Vincent23 dans le forum Macros et VBA Excel
    Réponses: 25
    Dernier message: 22/08/2008, 16h33
  4. Format de mise en forme d'écriture, de calendrier et de date
    Par Vincent23 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 12/08/2008, 14h45
  5. [XML - CSS - XSLT] Non-transformation ET non-mise en forme !?
    Par ghohm dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 18/05/2006, 17h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo