Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 transfert colonnes Array [RESOLU]

cathodique

XLDnaute Barbatruc
Bonjour,

Me revoilà, Job75 (Merci beaucoup) m'avait concocté un code en rapport avec cette DISCUSSION

Le résultat souhaité serait identique à l'exception que les 2 colonnes recettes et dépenses soient fusionnées en 1 seule colonne, avec l'ajout de la colonne opérations.

J'ai commencé un code avec des arrays (dont le début m'avait été proposé par Klin89 que je salue), mais mon code plante sur le dimensionnement du 2ème array. Je voulais passer par un autre tableau pour fusionner les 2 colonnes.


En vous remerciant par avance.

Bon Week-End.
 

job75

XLDnaute Barbatruc
Bonjour cathodique,

Ci-joint ton fichier de l'autre fil avec cette macro :
Code:
Private Sub Worksheet_Activate()
Dim col, n As Long, tablo
col = [{2,"N°";1,"Date";5,"Initiateur";9,"Mt_Initial";8,"Détails";6,"Dépenses(-)/Recettes";7,"";12,"Pointage"}]
Application.ScreenUpdating = False
Cells.Delete 'RAZ
For n = 1 To UBound(col)
  Feuil1.[A5].CurrentRegion.Columns(col(n, 1)).Copy Cells(1, n)
  Cells(1, n) = col(n, 2)
Next n
'---regroupement Dépenses/Recettes---
tablo = [A1].CurrentRegion.Columns(6).Resize(, 2) 'matrice, plus rapide
For n = 2 To UBound(tablo)
  If tablo(n, 1) <> "" Then
    If IsNumeric(CStr(tablo(n, 1))) Then tablo(n, 1) = -tablo(n, 1)
  Else
    tablo(n, 1) = tablo(n, 2)
  End If
Next n
[F1].Resize(UBound(tablo)) = tablo
Columns(7).Delete
Columns.AutoFit 'ajustement largeur
End Sub
Il est inutile de copier la colonne "Opérations", il me paraît beaucoup mieux de mettre le signe - devant les dépenses.

De cette manière tu peux facilement faire le total...

A+
 

Pièces jointes

  • Colonnes dans array(1).xlsm
    25.1 KB · Affichages: 38

cathodique

XLDnaute Barbatruc
Mon cher Job75,

Je te remercie beaucoup pour ton aide, mais pourquoi des valeurs négatives?
ça doit être -tablo(n,1).

En tout cas merci beaucoup, je revois ton code pour aller un peu plus loin.

Bon week-end.
 

cathodique

XLDnaute Barbatruc
Ce n'est pas la mer à boire, tu as 1315 posts à ton actif !

Oui, J'ai repris code dans une sub standard, puis F8. J'ai bien compris.
Je ne pratique pas régulièrement (inscrit depuis 2008 et seulement 1315) et l'âge fait que la mémoire décline régulièrement.
Pour info, des fois ça fuse et d'autres ça patine. Allez, comprendre quelque chose!
Merci beaucoup.

ps: 22415/1315=17.04 tu as 17 fois plus de posts que moi et tu as 1500 "j'aime"
y a pas photo! Je m'incline tes "j'aime" dépasse le nombre de mes posts.
 
Dernière édition:
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…