Erreur "Printarray" dans macro VBA

Bonsoir,

Je viens chercher de l’aide ici par rapport à une macro VBA récupérée sur un ancien fichier et que j’ai essayé d’adapter avec de nouvelles variables (pour info, je n’y connais pas grand-chose en syntaxe/terminologie VBA, et bien entendu ne suis pas à l’origine de la création de cette macro).

PS: le fichier correspondant avec sa macro est disponible en pièce jointe.

Qu’est censé faire cette macro ?

1. A partir des données des cellules (A : BI) présentes dans la feuille « Qlikview_Data » sur un horizon de 48 mois.

2. Ajouter dans la feuille « Basic_New » pour chaque combinaison de code (présents en colonne C) 3 lignes sous la forme « NPL, CO et Basic ».

3. Répartir les quantités sur chacune des 3 lignes par code selon que les quantités sur les 48 mois correspondent aux critères suivants :

a. NPL : copier de la première quantité sur l’horizon jusqu’au mois de juin de l’année en cours.

b. CO : copier à partir de juillet du mois en cours + 12 mois

c. Basic : copier quantités à partir du 13e mois jusqu’à fin de l’horizon

Là où cela semble bloquer c’est à au niveau de la dernière partie de Macro suivante:

"Print Arrays

PrintArray Sumifs2, ActiveWorkbook.Worksheets("Basic_New").[D3]"

Je ne comprends pas cette partie de la macro et encore moins ce que fait la fonction « Printarray »

Lorsque je lance la macro, j’ai le message d’erreur suivant :

"Erreur de compilation : sub ou Function non définie"

En gros, rien ne se passe.

Par avance merci pour votre aide précieuse.

DT

12macro-npl.xlsm (27.76 Ko)

Bonjour,

Quelqu'un aurait-il une solution par rapport à la problématique exprimée dans le post précédent?

Merci par avance

DT

Salut,

Tu cherches à appeler une fonction PrintArray que VBA ne connait pas,

Il faut définir cette fonction au préalable dans un sub pour "expliquer à VBA" ce qu'elle fait :

Sub PrintArray(Data As Variant, Cl As Range)
    Cl.Resize(UBound(Data, 1), UBound(Data, 2)) = Data
End Sub

Tu auras le même problème avec la fonction qui suit... Je ne sais pas ce qu'elle est sensée faire...

Girodo,

Pour que tu comprennes mieux j'ai créé un petit fichier d'exemple,

Dans le code VBA je définis la fonction PrintArray dans un premier sub.

Dans un second je définis un tableau bidon de 3 par 3 que je renvois dans ma feuille en appelant ma fonction PrintArray.

Girodo,

2prinarray.xlsm (13.24 Ko)
Rechercher des sujets similaires à "erreur printarray macro vba"