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 :

Printer un variant


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 233
    Par défaut Printer un variant
    Bonjour,

    En essayant de printer un variant de la manière suivante,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(RNG_START_MOVING_AVERAGE).Offset(1).Resize(UBound(var_moving_average) - LBound(var_moving_average) + 1).Value = var_moving_average
    j'obtiens la 1ère valeur de mon variant dans toutes les lignes.

    Est-ce que quelqu'un pourrait me filer un coup de main svp? :-)

    Merci d'avance!

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2009
    Messages : 652
    Par défaut
    Bonjour,

    Si cela peux vous éclairer, voici un exemple de code à tester sur une feuille vierge.
    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
    42
    Sub UneCellule()
    Dim var As Variant
    '---
    '### CAS 1 : Le variant représente une seule cellule
    [a1] = 3.14
    var = Range("a1")
    '---
    MsgBox "Le variant représente une seule cellule et ne contient qu'une seule valeur" & _
        vbCrLf & vbCrLf & "var = " & var
    '--- Inscription
    Range("E1") = var
    End Sub
     
    Sub UnePlageCellules()
    Dim var As Variant
    Dim i As Long
    Dim j As Long
    Dim A As String
    Dim R As Range
    '---
    '### CAS 2 : Le variant représente une plage de cellules
    '### Ce sera un variant tableau de variants qui aura toujours 2 dimensions (une pour les lignes, l'autre pour les colonnes)
    '### Dans l'exemple ci-dessous, on travaille sur la plage A1:A10
    For i = 1 To 10
      Range("a" & i) = i
    Next i
    var = [a1].CurrentRegion
    '---
    For i = 1 To UBound(var, 1)   ',1 la dimension ligne(s)
      For j = 1 To UBound(var, 2) ',2 la dimension colonne(s)
        A = A & var(i, j) & vbCrLf
      Next j
    Next i
    '---
    MsgBox "Le variant représente une plage et contient un tableau de variants. Tableau à 2 dimensions" & _
        vbCrLf & vbCrLf & "Nombre de lignes = " & UBound(var, 1) & _
        vbCrLf & "Nombre de colonnes = " & UBound(var, 2) & _
        vbCrLf & vbCrLf & "Les valeurs :" & vbCrLf & A
    '--- Inscription
    Set R = Range("e1").Resize(UBound(var, 1), UBound(var, 2))
    R = var
    End Sub

Discussions similaires

  1. Transtypage d'un variant.
    Par Lodonez vincent dans le forum Langage
    Réponses: 4
    Dernier message: 02/09/2004, 19h42
  2. Champ Date à '01/01/0001' -> Pb conversion de variant !!!
    Par AnnSo dans le forum Bases de données
    Réponses: 6
    Dernier message: 04/06/2004, 16h54
  3. conversion : VARIANT FAR* URL vers CString
    Par kam dans le forum MFC
    Réponses: 2
    Dernier message: 29/03/2004, 13h32
  4. Convertion de type VARIANT à type CString
    Par j_grue dans le forum MFC
    Réponses: 2
    Dernier message: 07/11/2002, 14h18
  5. [VB6] [Printer] Chiffres alignés à droite
    Par Laye dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 03/10/2002, 18h36

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