bennyscot
Messages postés19Date d'inscriptionmercredi 15 novembre 2006StatutMembreDernière intervention17 octobre 2012
-
29 nov. 2006 à 11:05
drikce06
Messages postés2236Date d'inscriptionlundi 29 mai 2006StatutMembreDernière intervention29 mai 2008
-
30 nov. 2006 à 08:43
Bonjour à tous,<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>
Je suis novice en VBA et dans le cadre de mon travail je viens de reprendre un fichier Excell avec une Macro.
Ce fichier Excell est constitué de deux onglets « Validation Contestation » et « Synthèse contestation du mois ». Le but de la Macro est de faire passer certaines infos du premier onglet dans le deuxième.
Le premier onglet est construit comme cela :
n° de contestation
, XXXXX
, ----
Client
, THYSSEN
, ----
Compte fournisseur (8 chiffres)
, 53479023
, ----
Site fournisseur (2 chiffres)
, 00
, ----
Mois industriel
, Octobre
, ----
Année
, 2006
, ----
Date début période
, 15-oct
, ----
Date fin de période
, 20-oct
La Macro doit normalement prendre les 6 indicateurs du clients et la rajouter dans l’autre onglet comme ceci :
N°
contestation
,
Client
,
Compte
fournisseur
(8 chiffres)
,
Site
fournisseur
(2 chiffres)
,
Mois
industriel
,
Année
,
Date
début période
,
Date
fin de période
,
----
XX28
,
THYSSEN
,
52479023
,
00
,
Octobre
,
2006
,
15-oct
,
20-oct
,
----
XX27
,
THYSSEN
,
0024713
,
00
,
Octobre
,
2006
,
15-oct
,
20-oct
Le problème est qu’à l’heure actuelle la Macro me permet juste d’indiquer automatiquement un seul indicateur cad le compte fournisseur.
Voici se qui se passe après l’activation de la Macro :
N°
contestation
,
Client
,
Compte
fournisseur
(8 chiffres)
,
Site
fournisseur
(2 chiffres)
,
Mois
industriel
,
Année
,
Date
début période
,
Date
fin de période
,
----
,
Libellé
,
0024713
,
,
,
,
,
,
----
XX28
,
THYSSEN
,
0024713
,
00
,
Octobre
,
2006
,
15-oct
,
20-oct
Voici la Macro que j’ai à l’heure actuelle : Comment l’améliorer pour indiquer tous les indicateurs en ligne comme ci-dessus ?
Merci Beaucoup
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 09/11/2006 par p039631
'
'
Cells.Select
Selection.ClearContents
Selection.Delete Shift:=xlUp
End Sub
Sub Valider()
'
' Valider Macro
' Macro enregistrée le 09/11/2006 par p039631
'
'
Sheets("Synthèse contestation du mois ").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Sheets("Validation Contestation").Select
Range("B3").Select
Selection.Copy
Sheets("Synthèse contestation du mois ").Select
Range("B2").Select
ActiveSheet.Paste
Sheets("Validation Contestation").Select
Range("B4").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Synthèse contestation du mois ").Select
Range("C2").Select
ActiveSheet.Paste
End Sub
Sub Macro3()
'
' Macro3 Macro
' Macro enregistrée le 09/11/2006 par p039631
'
'
End Sub
A voir également:
Débutant VBA - Pb urgent - transfert d'info d'un onglet à un autre
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 30 nov. 2006 à 00:12
Si tu utilises l'enregistreur de macro, tu peux copier les cellules en colonne que tu veux déplacer, sélectionner l'onglet et la cellule où tu veux coller les données en ligne et faire Collage Spécial en valeur et sélectionner "transposé".
Tes données seront alors collées en ligne plutôt qu'en colonne
Il reste maintenant à savoir si les données sont toujours au même endroit à l'origine et sur quelle ligne tu veux les coller...