Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Macro sub VBA [ Langages dérivés / VBA ] (azg0rth)

jeudi 10 avril 2008 à 10:21:15 | Macro sub VBA

azg0rth

Bonjour a tous!!
Je suis nouveau sur le site et ce serait vraiment super si qqun pouvait m'aider :)
Je dispose d'un tableau excel très mal fait...et j'ai plusieurs choses à faire dessus
Tout d'abord, je dois selectionner dans la première colonne l'ensemble des cellules ayant le format *00000 (une etoile suivie de 5chiffres) ou le format 000000 (6 chiffres) puis copier cette cellule ainsi que la cellule juste en dessous (contenant des lettres et parfois des chiffres) dans une nouvelle feuille excel ou nouveau fichier excel appelé BLABLA pour l'occasion, et cela sur une meme ligne mais 2 colonnes distinctes en supprimant les espaces entre :)

c'est à dire:
(Feuille excel 1)
(Colonne1)
*00000
text1
<vide>
<vide>
<vide>
*00008
text2
<vide>
<vide>
<vide>
000245
text3

 

                                 (Feuille excel 2)     (Colonne1)  (Colonne2)
Devient----------------------------->     *00000          text1
                                                              *00008          text2
                                                              *000245        text3


Après ça, il faut reprendre le nombre qui se situe sur la meme ligne que la cellule *00000 ou 000000 mais dans la colonne 3 (la colonne "C"), le copier et le coller dans la colonne 9 de la feuille 2 (colonne "I"). Le problème est qu'encore une fois, il s'agit un nombre précédé d'une étoile et 4 espaces (du style *    245) et qu'il ne faut reprendre que le nombre (bref supprimer l'étoile)
Illustration:

(Feuille excel 1)
(Colonne1) (Colonne 2) (Colonne3)
*00000                           *    665
text1
<vide>
<vide>
<vide>
*00008                            *    5488
text2
<vide>
<vide>
<vide>
000245                            *    448
text3

 

                                 (Feuille excel 2)     (Colonne1)  (Colonne2) (...) (Colonne 9)
Devient----------------------------->     *00000          text1                665
                                                              *00008          text2                5488
                                                              *000245        text3                 448
 

c'est pas fini lol ... mais si quelqu'un pouvait déja m'aider pour ca ce serait super!!!
merci!


jeudi 10 avril 2008 à 10:25:07 | Re : Macro sub VBA

azg0rth

oulala je remarque que ma mise en page des colonnes a été estropiée dans le message...
Voici la derniere illustration,un peu plus au clair:

            (Feuille excel 2)     (Colonne1)  (Colonne2) (...) (Colonne9)
Devient--------------->     *00000          text1                    665
                                         *00008          text2                    5488
                                         *000245        text3                     448

thx!

jeudi 10 avril 2008 à 11:07:48 | Re : Macro sub VBA

Firelion

Bonjour,

Voici ce que je te propose :

Sub ParcoursFeuille()

Feuil1.Select

i = 1
j = 1

While Cells(i, 1) <> "FIN"
    Feuil1.Select
    If Cells(i, 1).Value Like "*[0-9][0-9][0-9][0-9][0-9]" Or Cells(i, 1).Value Like "[0-9][0-9][0-9][0-9][0-9][0-9]" Then
        Variable1 = Cells(i, 1).Value
        Variable2 = Cells(i + 1, 1).Value
        Variable3 = Cells(i, 3).Value
        'MsgBox (Cells(i, 1).Value)
        'MsgBox (Cells(i + 1, 1).Value)
        'MsgBox (Cells(i, 3).Value)

        Feuil2.Select
        Cells(j, 1) = Variable1
        Cells(j, 2) = Variable2
        Cells(j, 9) = Variable3
        j = j + 1
    End If
   
    i = i + 1
Wend

 

End Sub

Copie cette fonction dans un module VBA,

Ajoute le mot FIN dans la première colonne de ta première page à la suite de tes données.

Dis moi ensuite si jamais il y a un problème.


jeudi 10 avril 2008 à 12:23:02 | Re : Macro sub VBA

azg0rth

Pour l'instant, j'ai le message "run-time error '424'"
Sinon merci pour la fonction "like (format cellule)", elle ne faisait pas partie de mes faibles connaissances! Je dois la réutiliser pour faire le meme genre de macro par apres mais avec des dates, je suppose que la formule sera:

If Cells(i, 3).Value Like "[0-9][0-9]/[0-9][0-9]/03" Then ... //copier valeur de la somme des cellules de la Feuil1 (i,4) + (i,5) + (i,6) + (i,7) + (i,8) + (i,9) dans la cellule (j,4) de la Feuil2//
elseif Cells(i, 3).Value Like "[0-9][0-9]/[0-9][0-9]/04" Then...//copier valeur de la somme des cellules de la Feuil1 (i,4) + (i,5) + (i,6) + (i,7) + (i,8) + (i,9) dans la cellule (j,5) de la Feuil2//
elseif Cells(i, 3).Value Like "[0-9][0-9]/[0-9][0-9]/05" Then...//copier valeur de la somme des cellules de la Feuil1 (i,4) + (i,5) + (i,6) + (i,7) + (i,8) + (i,9) dans la cellule (j,6) de la Feuil2//
elseif Cells(i, 3).Value Like "[0-9][0-9]/[0-9][0-9]/06" Then...//copier valeur de la somme des cellules de la Feuil1 (i,4) + (i,5) + (i,6) + (i,7) + (i,8) + (i,9) dans la cellule (j,7) de la Feuil2//
elseif Cells(i, 3).Value Like "[0-9][0-9]/[0-9][0-9]/07" Then...//copier valeur de la somme des cellules de la Feuil1 (i,4) + (i,5) + (i,6) + (i,7) + (i,8) + (i,9) dans la cellule (j,8) de la Feuil2//
elseif Cells(i, 3).Value Like "[0-9][0-9]/[0-9][0-9]/08" Then...//copier valeur de la somme des cellules de la Feuil1 (i,4) + (i,5) + (i,6) + (i,7) + (i,8) + (i,9) dans la cellule (j,9) de la Feuil2//
Endif

thx!

jeudi 10 avril 2008 à 12:33:12 | Re : Macro sub VBA

azg0rth

Ha oui, j'ai décalé les colonnes d'un rang :/... en réalité, toutes les cellules (j, x) devraient être (j, x-1) dans la macro suivante

Sinon, j'ai bien adapté les paramètres de la macro que tu m'a proposé à mes paramètres, j'ai bien rajouté FIN à la suite des données de la 1° colonne, mais je retombe toujours sur le même run-time error
Tu aurais une idée d'ou ca peut provenir?

jeudi 10 avril 2008 à 12:39:40 | Re : Macro sub VBA

Firelion

Re,
Quelle ligne du code est surlignée quand tu fais débogage?


jeudi 10 avril 2008 à 13:39:24 | Re : Macro sub VBA

azg0rth

Re Re
Aucune ligne n'est surlignée, c'est ca le problème.
:(

jeudi 10 avril 2008 à 13:44:51 | Re : Macro sub VBA

Firelion

Si tu exécutes ça est ce que ça fonctionne?

Sub ParcoursFeuille()

Feuil1.Select

i = 1
j = 1

While Cells(i, 1) <> "FIN"
    Feuil1.Select

   
    i = i + 1
Wend


jeudi 10 avril 2008 à 13:45:30 | Re : Macro sub VBA

Firelion

Excuse moi j'ai oublié le End Sub à la fin


jeudi 10 avril 2008 à 13:50:25 | Re : Macro sub VBA

azg0rth

Ca me renvoit le même message d'erreur



1 2 3

Cette discussion est classé dans : excel, feuille, colonne, cellule, colonne1


Répondre à ce message

Sujets en rapport avec ce message

[VBA-Excel] Construction d'un arbre d'appels [ par FenX ] Bonjour, Je me retrouve face à un petit problème, j'espère que vous saurez m'indiquer une direction. Ecrire dans excel [ par detbour ] BONJOURJe suis débutant en vba, j'ai un bout de code qui me permet d'ecrire dans excel dans une colonne.A chaque fois que je lance le programme je peu Excel [ par moustike31 ] Bonjour, Je travail actuellement sur Excel. j'ai une page menu qui doit me permettre d'accéder à la feuille excel qui m'intérresse (du même fichier). EXCEL :Ouverture d'une feuille sur une cellule précise à partir du résultat d'une autre cellule [ par Hector66 ] Bonjour à tousJ' ai un fichier XLS constitué de 2 feuille .Sur la feuille 1, un choix déroulant avec des references et une cellule avec une formule de feuille excel et combobox [ par detbour ] Bonjour bonne annee a tous.Je cherche a faire un petit programme avec une feuille excel et des boite de dialogues.Par exemple je veut faire un recapit incrementation cellule sur excel [ par igor941 ] bonjour,voici mon probleme je debbute dans la programmation en vba et j'essaie de me debrouiller pas mal avec les fiorum grace a vous (merci!!) donc m VBA_Collage spécial d'une colonne "sous condition" sur une autre feuille excel [ par mouncefdi ] salut le forum,Je suis un débutant en VBA, mais connaissances sont très limitées, ci-dessous je vous explique ce que je souhaite faire en espérant que lien entre userForm et feuille excel [ par Maha79 ] Bonjour à tous,Je suis débutante en VBA et j'ai besoin de vos conseils.J'ai un classeur excel qui contient plusieurs données réparties sur deux feuill lien entre userForm et feuille du classeur excel [ par Maha79 ] Bonj Formule Excel [ par cheyenne ] Bonjour à Tous,Je fais appel à votre sagacité pour résoudre le problème suivant car je n'arrive pas à trouver la formule adéquate.Dans un tableau de 4


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,265 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.