comment coller une partie de VBA tableau excel gamme
Est en quelque sorte possible de passé une partie de vba tableau à une plage excel?
J'ai besoin de faire quelque chose comme ceci:
dim testday() as Variant
testday = Sheets("raw").Range("E745:BN745").Value
Sheets("raw").Range("E745:BN745").Value = ""
Sheets("Interface").Range("B4:E4") = testday(3, 4, 5, 6).Value
mais cela ne fonctionne pas... est-il un moyen de résoudre ce problème? Thx!
- Je préfère
Sheets("raw").Range("E745:BN745").ClearContents
- Ouais, j'ai l'habitude de le faire, mais je les ai conditionnelle formaté et je veux le garder, mais thx!
ClearContents
n'est pas supprimer la mise en forme conditionnelle.- hmm ok, donc c'est différent .est-ce clair? thx pour que!
Vous devez vous connecter pour publier un commentaire.
Vous pouvez soit:
Utiliser une boucle pour copier les valeurs que vous avez besoin d'un nouveau tableau, et de l'écrire à votre portée. Si vous allez le faire souvent, vous pouvez écrire une réutilisables fonction qui fait cela. Ou,
Lire uniquement ce dont vous avez besoin à partir de votre
"raw"
feuille, et de l'écrire à votre portée, comme illustré ci-dessous. C'est probablement la solution la plus simple dans votre cas particulier.Vous pouvez Tranche la
Array
à l'aide deIndex
fonctionArray(3,4,5)
je voudrais utiliserEvaluate("TRANSPOSE(ROW(" & lStartIndex & ":" & lFinishIndex & "))")
, ce qui rend un tableau à une dimension de numéros commençant parlStartIndex
tout le chemin àlFinishIndex
, et peut être utilisé pour allouer un arbitraire long (contiguë) tableau dynamiquement.Si le tableau que vous souhaitez copier est unidimensionnel, et vous avez besoin de copier des cellules contiguës, vous pouvez utiliser le CopyMemory fonction:
Testé avec la première ligne,
retourne
sur la deuxième ligne.
Si votre extrait de code serait le changement comme
J'espère que cela aide!