rouday55
Messages postés40Date d'inscriptionjeudi 28 février 2008StatutMembreDernière intervention 8 décembre 2011
-
8 déc. 2011 à 15:40
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
8 déc. 2011 à 20:19
bonjour à tous les EXCELlents !
Je soliscite votre aide aujourd'hui. Je bloque sur un problème tout bête dans la manipulation de données avec VBA. Je m'explique:
J'ai une ligne dans laquelle sont générées des dates les unes a coté des autres. Je souhaite utiliser ces valeurs que j'affecte aux cellules d'une même colonne. Le seul hic, c'est qu'il ne s'agit pas de faire une simple transposée. Je voudrais en effet laisser un nombre de cellules vides entre chaque valeur de cette colonne. Ce nombre de cellules vides est une constante.
J'ai essayé ceci qui ne marche évidement ^pas
Sheets("Recapitulatif").Select
nblignes = Range("A2").End(xlDown).Row
nbcolonnes = Range("A1").End(xlToRight).Column
For i = 1 To (nblignes*nbcolonnes)
For j = 5 To nbcolonnes
Cells(i * nblignes, 2).Value = Cells(1, j).Value
Next j
Next i
En résumé je voudrais automatiser cette tâche :
Cells(1 * nblignes + 1, 2).Value = Cells(1, 5).Value
Cells(2 * nblignes + 1, 2).Value = Cells(1, 6).Value
Cells(3 * nblignes + 1, 2).Value = Cells(1, 7).Value
ainsi de suite jusqu'a Cells(nbcolonnes * nblignes + 1, 2).Value = Cells(1, nbcolonnes=145).Value
Avez vous une idée avec un style de code assez simple pour un débutant comme moi ? :D je vous remercie
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 8 déc. 2011 à 16:24
Pendant que tu es dans l'aide, regarde les différences entre
.Value
.Value2 et
.Text
d'une cellule, c'est important, surtout quand on manipule des dates
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 8 déc. 2011 à 17:10
Bonjour,
@rouday55 :
tu te compliques inutilement la vie, alors que ton message montre que tu sais ce qu'est une transposition.
Il te suffit de faire ta transposée vers la plage de ton choix, puis, dans cette plage, d'y insérer tes lignes en partant du bas de la plage vers le haut de la plage.
A ce stade, je te laisse d'abord essayer seul.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
rouday55
Messages postés40Date d'inscriptionjeudi 28 février 2008StatutMembreDernière intervention 8 décembre 2011 8 déc. 2011 à 17:15
Merci à tous les 3 pour vos réponses.
ucfoutu, j'ai essayé ce que tu m'as dit mais ca me dérange un peu de créer une nouvelle feuille pour faire la transposition puis de la copier coller sur la bonne feuille.
quant a l'offset, jack je ne connais pas du tout comment ca s'utilise dans de cas là
Vous n’avez pas trouvé la réponse que vous recherchez ?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 8 déc. 2011 à 17:48
ucfoutu, j'ai essayé ce que tu m'as dit mais ca me dérange un peu de créer une nouvelle feuille pour faire la transposition puis de la copier coller sur la bonne feuille.
Où et quand t'ai-je parlé de créer pour cela une nouvelle feuille ?
où aurais-tu vu qu'une transposition nécessite l'utilisation d'une feuille tierce ?
Il me semble que tu t'imposes à toi même ce dont tu dis que cela te dérange !
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 8 déc. 2011 à 18:01
Et j'ajoute ceci (lis bien et ne lis que cela, sans extrapoler je ne sais quoi) :
Si, en outre, il ne s'agit que des valeurs et pas du reste (mise en forme, format, etc ...), c'est encore plus facile à mettre en oeuvre !
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
rouday55
Messages postés40Date d'inscriptionjeudi 28 février 2008StatutMembreDernière intervention 8 décembre 2011 8 déc. 2011 à 18:43
je n'extrapole pas mais sur la feuille actuelle, je n'ai pas la place de faire des transpositions etc. La feuille est bourrée de données un peu partout. J'utilise donc une feuille annexe que j'ajoute pour faire la transposition et j'insère des lignes vides entre les cellules. Enfin je copie tout et je colle dans ma feuille principale en écrasant certaines anciennes données et je supprime la feuille annexes. J'aurais pensé pouvoir travailler uniquement avec des boucles et des conditions afin de faire des tests avec les cellules a l'aide d'une formule un peu mathématique mais bon ce nest pas grave, ce qui compte c'est le résultat certes un peu long.
merci en tout cas
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 8 déc. 2011 à 18:50
Je répète donc :
Absolument aucune nécessité d'une feuille tierce pour obtenir, sur ta feuille à transposer elle-même la transposée de cette feuille !
Je ne montrerai toutefois pas ici le tout petit bout de code à écrire tant que ce sujet (comme tous ceux que tu as ouverts sur ce forum) n'aura pas été déplacé dans la section dans laquelle il aurait dû être ouvert par toi. (cela fait quand même 3 années que tu fréquentes ce forum, non ?).
Alors maintenant : patience
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
rouday55
Messages postés40Date d'inscriptionjeudi 28 février 2008StatutMembreDernière intervention 8 décembre 2011 8 déc. 2011 à 19:37
3 années que je fréquente le forum et 3 années et 3 années que ca ne m'apporte pas grand chose. ce n'est pas grave je reviendrai l'année prochaine pour poster des questions sur le python pascal ou fortran. ;)
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 8 déc. 2011 à 19:49
Ce sera en ce qui te concerne comme tu voudras, bien évidemment
et ce sera non moins évidemment, en ce qui me concerne, comme je le vois, le sens et le pense .
Et te mettre ici, dans une section dans laquelle aucun forumeur VBA n'y serait censé "fouiller" une solution, un bout de code VBA, signifierait pour moi que je considèrerais (comme toi apparemment) que ce forum n'a pas pour vocation celle de venir en aide à un groupe de développeurs utilisant le même outil de développement, mais ... celle d'apporter/servir_tout_cuit à un seul individu un "bout de code" qu'il attend.
Ce n'est pas l'idée que je me fais d'un forum et nul ne me fera changer d'avis sur ce point.
Je te souhaite bonne chance.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
rouday55
Messages postés40Date d'inscriptionjeudi 28 février 2008StatutMembreDernière intervention 8 décembre 2011 8 déc. 2011 à 20:13
Merci
Il n'y a pas de soucis. J'ai étudié à l'école les bases de programmation il y a des années de cela et je trouve triste que lorsqu'on demande de l'aide pour gagner du temps et être efficace dans son boulot, on nous considère comme si nous étions des étudiants en quête de solutions pour leur devoirs avec des bribes d'indices et des sous-entendus.
No way, ce n'est pas grave, la prochaine où j'aurai envie de jouer aux devinettes je saurai où aller
Bonne continuation.
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 8 déc. 2011 à 20:19
la prochaine où j'aurai envie de jouer aux devinettes je saurai où aller
Je n'en doute pas ! tu as toutes les compétences nécessaires pour aller frapper aux portes qui ne sont pas celles qui correspondent à tes connaissances, à commencer par le plus simple : ton outil de développement.
La prochaine fois que tu auras besoin d'un conseil pour réaliser une délicieuse tarte aux fruits, n'hésite pas à les demander là où tu penses recevoir la réponse appropriée : chez un charcutier, par exemple.
Allons bon !
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient