J'essaie de conserver les zéros avancés dans une sortie de tableau qui utilise des types de données Variant et Long. Lorsque j'essaie de changer la variable D en Chaîne, j'obtiens une erreur de concordance de type. Un problème supplémentaire est que le nombre de zéros avancés doit être flexible car les valeurs varient de 4 à 9 numbers. Je collage tout le sous-dessous, ainsi qu'une capture d'écran des valeurs et des résultats d'input.
Merci d'avance pour toute suggestion!
Sub ExpandRanges() Dim ArrayData As Variant Dim ArrayOut As Variant Dim X As Long Dim D As Long Dim Index As Long ActiveSheet.Range("A1:B3").NumberFormat = "@" ArrayData = Range("A1:B3") ReDim ArrayOut(1 To Evaluate("Sum(B1:B3-A1:A3+1)"), 1 To 1) For X = 1 To UBound(ArrayData) For D = ArrayData(X, 1) To ArrayData(X, 2) Index = Index + 1 ArrayOut(Index, 1) = D Next Next With ActiveSheet.Range("D1").Resize(UBound(ArrayOut), 1) .Cells = ArrayOut End With End Sub
Votre NumberFormat
devrait être quelque chose comme "0000000000" pour une string de 10 numbers qui conserve les zéros principaux.