Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2486 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Variable tableau / Range("A1:A" & i) = montab - ne fonctionne pas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Variable tableau / Range("A1:A" & i) = montab - ne fonctionne pas

n°2112647
magiczorro​1
Posté le 21-11-2011 à 17:08:50  profilanswer
 

Bonjour,
 
Dans une macro EXCEL 2007, j'utilise une variable tableau qui contient du texte.
 
1 - AAAA
2 - BBBB
3 - ABCD
4 - "vide"
5 - "vide"
 
L'expression suivante fonctionne correctement :
 
      For i = 1 To j
      Range("A" & i) = montab(i)
      Next i
 
avec j = 3
 
Mais quand j'écris :
 
Range("A1:A" & j) = montab
 
Il m'affiche uniquement la 1er valeur de montab sur 3 lignes. Je ne vois pas ce qui cloche ?
 
Merci pour vos réponses

mood
Publicité
Posté le 21-11-2011 à 17:08:50  profilanswer
 

n°2112663
kiki29
Posté le 21-11-2011 à 18:36:38  profilanswer
 

Salut,

Option Explicit
 
Sub Tst()
Dim Ar() As Variant
 
    Ar = Feuil1.Range("A1:A7" )
 
    Feuil1.Range("B1" ).Resize(UBound(Ar, 1), UBound(Ar, 2)) = Ar
End Sub


---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
n°2113028
magiczorro​1
Posté le 23-11-2011 à 23:16:35  profilanswer
 

Merci pour la réponse.
 
J'ai essayé : Range("B1" ).Resize(UBound(montab, 1)) = montab (une seule dimension)
 
Le résultat est exactement le même !!
 

n°2113032
kiki29
Posté le 24-11-2011 à 04:05:16  profilanswer
 

Salut, comme cela tu ne reviendras pas poser la question , à titre d'exemple pour la concaténation de n feuilles en une seule
 

Option Explicit
 
Sub ConcatenationFeuilles()
Dim i As Long
Dim T() As Variant
    Application.ScreenUpdating = False
    ShConcat.Cells.Clear
    For i = 1 To Sheets.Count
        If Sheets(i).Name <> ShConcat.Name Then
            With Sheets(i)
                T = .Range("A4:J" & .Range("A" & Rows.Count).End(xlUp).Row).Value
                ShConcat.Range("A" & Rows.Count).End(xlUp).Offset(1).Resize(UBound(T, 1), UBound(T, 2)) = T
            End With
        End If
    Next i
    Erase T
    Application.ScreenUpdating = True
End Sub


Message édité par kiki29 le 24-11-2011 à 04:33:47

---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Variable tableau / Range("A1:A" & i) = montab - ne fonctionne pas

 

Sujets relatifs
[RESOLU] Recuperer tableau associatif de ma sessionproblème exercice tableau
Code A Provenance de train + numerodiviser tableau en plusieurs pages
modifier directement tableau page webCopy de tableau de caractère dans un tableau de caractère.
espaces dans valeurs variable bloque appel à la fonction ?HTML/CSS : Centrage tableau bug
Comment lire un tableau dans le registre 
Plus de sujets relatifs à : Variable tableau / Range("A1:A" & i) = montab - ne fonctionne pas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR