Signaler

Diviser des colones pas 1000 avec VBA [Résolu]

Posez votre question bobytto 19Messages postés mardi 10 janvier 2017Date d'inscription 10 février 2017 Dernière intervention - Dernière réponse le 10 févr. 2017 à 19:01 par Whismeril
Bonjour,

Je souhaire divisier des plages de cellules dynamiques (la longueur n'est pas toujours la meme) par 1000 avec VBA.

Mes colonnes sont les suivantes et commencent a la ligne 4 : ("I:J,L:M,P:Q,T:U,W:X,AA:AB").

Merci pour votre aide,

Ben
Utile
+1
plus moins
bonsoir, c'est effectivement faisable.
dans le cas où tu as peu d'expérience en VBA, as-tu envisagé de faire cela avec des formules?
Cette réponse vous a-t-elle aidé ?  
Whismeril 9990Messages postés mardi 11 mars 2003Date d'inscription ContributeurStatut 25 septembre 2017 Dernière intervention - 8 févr. 2017 à 06:02
Bonjour,

S'il veut que le résultat soit dans la cellule d'origine avec les formules ça va merder.
Répondre
bobytto 19Messages postés mardi 10 janvier 2017Date d'inscription 10 février 2017 Dernière intervention - 8 févr. 2017 à 16:35
oui avec des formules et specialement avec le "copy - divide into" j'ai deja fait mais la ca serait pour le faire automatiquement via la macro.
Je vais trouver une solution
Merci pour vos reponses quand meme
Répondre
Donnez votre avis
Utile
+0
plus moins
Je n'ai pas de quoi tester sous la main, mais ça n'est qu'une simple boucle for.

Tapé de tête, donc un truc un peu comme ca.
Dim derniereLigne as integer
derniereLigne =10'là tu mettras la bonne valeur

For i = 4 to derniereLigne
     Activesheet.Cells(i,9).Value = Activesheet.Cells(i,9).Value/1000'si je ne me suis pas trompé la colonne I c'est 9
     Activesheet.Cells(i,10).Value = Activesheet.Cells(i,10).Value/1000'colonne L
'Etc.
Next i

Whismeril 9990Messages postés mardi 11 mars 2003Date d'inscription ContributeurStatut 25 septembre 2017 Dernière intervention - 8 févr. 2017 à 19:01
et oui, on ne se refait pas hein!!!

Edit: finalement je ne voies pas de quoi tu parles.....
Répondre
pijaku 12206Messages postés jeudi 15 mai 2008Date d'inscription ModérateurStatut 13 septembre 2017 Dernière intervention - 9 févr. 2017 à 10:30
Lut,

finalement ce petit jeu peut durer longtemps...
Répondre
Whismeril 9990Messages postés mardi 11 mars 2003Date d'inscription ContributeurStatut 25 septembre 2017 Dernière intervention - 9 févr. 2017 à 12:53
Moui moui moui
Répondre
bobytto 19Messages postés mardi 10 janvier 2017Date d'inscription 10 février 2017 Dernière intervention - 10 févr. 2017 à 18:31
Hello Whismeril,

J'ai bien etudier ton lien et j'ai reussi a faire ce que je voulais! J'ai un peu galere car il y avait un bug qui revenait sans cesse, c'etait a cause du :

cmpt1 As Long, cmpt2 As Long (cf Introduction)

que j'ai transformer en :

cmpt1 As Double, cmpt2 As Double

car mes chiffres etaient a virgules.



Aussi, j'ai eu des difficultes avec (cf Introduction) :

Dim Montab As Variant, cmpt1 As Long, cmpt2 As Long
Montab = Range("A1:J65535").Value

car je ne voulais pas diviser toutes les colonnes de mon tableau par 1000 mais seulement certaines d'entre elles ("I:J,L:M,P:Q,T:U,W:X,AA:AB").

Du coup, j'ai teste en repetant l'operation decrite en Introduction pour chaque groupe de colonnes :
Montab = Range("I1:L65535").Value blablabla...

Merci pour ton apport, ca m'a appris un truc et content que l'on est pu clarifier la situation initial :)

Bonne journee!
Répondre
Whismeril 9990Messages postés mardi 11 mars 2003Date d'inscription ContributeurStatut 25 septembre 2017 Dernière intervention - 10 févr. 2017 à 19:01
Tant mieux.

Pense à marquer le sujet résolu.
Répondre
Donnez votre avis
Utile
+0
plus moins
Bonjour tout le monde,

Complément d'information nécessaire :
Mes colonnes sont les suivantes et commencent a la ligne 4 : ("I:J,L:M,P:Q,T:U,W:X,AA:AB")

Tu veux quoi ?
1- que I, J, L, M, P, Q etc soient toutes divisées par 1000
2- que J = I/1000, M = L/1000, Q = P /1000 etc...
bobytto 19Messages postés mardi 10 janvier 2017Date d'inscription 10 février 2017 Dernière intervention - 10 févr. 2017 à 16:50
Bonjour Pijaku,

Je cherche a diviser toutes ces colonnes par 1000, donc choix 1.
Je suis en train d'etudier la proposition de Whismeril mais si tu connais un autre moyen, je suis preneur car je souhaite agrementer mon bagage technique sur VBA!
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !