begin process at 2008 07 06 19:10:40
1 205 717 membres
280 nouveaux aujourd'hui
14 119 membres club

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 : Excel ajout d'enregistrement avec timer [ Divers / General ] (LolPiratas)

Excel ajout d'enregistrement avec timer le 17/02/2008 14:36:44

LolPiratas

Bonjour, j'ai fait un programme pour lire les fichiers mazak d'un disque dur, il analyse les fichiers vérifient s'il est ok. Mais tout en le vérifiant j'aimerais qu'il retranscrit dans un fichier Excel le numéro de programme qui correspond à la machine ex :  Programme t32, Programme t2, programme m32 etc. Donc supposons que le numéro 0214 et t'un programme T2  il s'écrit en dessous de programme t2. J'avais déjà cette source mais plus moyen de le retrouver. Et au fait il faisait bien la correspondance mais quand il changeait de colonne il laissait une case vierge c'est possible aussi qu'il ne fasse plus ce genre de case vide merci ?

 

J'en ai besoin pour mon boulot merci.



Yo ManaM oY

Re : Excel ajout d'enregistrement avec timer le 17/02/2008 16:35:40

MPi
Comme je ne connais pas ce genre de fichier (mazak), c'est difficile d'aider...
Peux-tu mettre un extrait d'un fichier et un peu de ton code, tout en explicant ce qui ne fonctionne pas ?

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI


Re : Excel ajout d'enregistrement avec timer le 17/02/2008 17:09:33

LolPiratas

En fait en citant fichier mazak j'enduis en erreur.

Les fichiers sont nommés en chiffre sans extension. Le problème n'est pas là. J'arrive à différencier les machines.

Dans un bouton de commande j'ouvre le classeur xls

Set xlBook = GetObject("c:/classeur1.xls")

xlBook.Application.Visible = True

xlBook.Windows(1).Visible = True

xlBook.Save

 

Dans une boucle exemple un timer.  Je veux écrire dans les colonnes.

 

'Dim i As Integer

''For i = 0 To txt1

   'Worksheets(1).Range("A" & txt1).Value = Label1  '/label1 étant le nom du fichier

   'Next i

Je suis enfin arrivé a écrire dans le classeur xls en bidouillant je peux ranger dans A,B ou C.

Mais le problème c'est que cela ralentis l'écriture car j'aurai environ 6000 fichiers a classé.

je doit surement vider la memoire mais comment.
Yo ManaM oY

Re : Excel ajout d'enregistrement avec timer le 17/02/2008 17:24:43

MPi
Je ne sais pas ce que vaut "txt1", mais si tu veux écrire dans le fichier, il faudrait commencer ta boucle à 1 et non 0, parce que la ligne 0 n'existe pas sous Excel.

Pour vider la mémoire, je ne sais pas.
Mais pour accélérer le processus, tu peux mettre
Application.ScreenUpdating = False en début de boucle et le remettre à True à la fin. Ça évitera le raffraîchissement de l'écran et ça ira plus rapidement.

Et tu es mieux d'utiliser une boucle plutôt qu'un Timer parce que tu ne sauras pas combien de temps ça prend pour effectuer une tâche. Vaut mieux laisser le système décider, je pense.

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI


Re : Excel ajout d'enregistrement avec timer le 17/02/2008 17:46:04

LolPiratas
merci MPi , j'ai eu une amélioration niveau ralentissement , mais c pas encore ca
je cherche, je cherche, encore merci de ton aide je ne connaissez pas cette instruction Application.ScreenUpdating = False

Yo ManaM oY

Re : Excel ajout d'enregistrement avec timer le 17/02/2008 17:57:13

MPi
Si je comprend bien, tu programmes sous VB6 et utlises l'Automation pour accéder à Excel et y copier des données. Je ne sais pas si c'est possible, mais as-tu pensé utiliser Excel pour tout faire plutôt que de passer par VB6 ?

Je pense que ce serait plus rapide du fait qu'il n'y aurait pas le ralentissement de l'Automation... (?)   une idée comme ça...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI


Re : Excel ajout d'enregistrement avec timer le 17/02/2008 18:14:47

LolPiratas

C'est que mon programme en vb extrais des données en hexadécimal

Fichier mazak

p2[1]3111<ici le numero change pour chaque machine 0000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


07


[1]300000DF010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


2E


[1]32000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


05


p2[1]110001002A003200DFBD3D464F4E44204445204D4154<ici  on prend les deux chiffres on les change en decimale et on a le nom du fichier ex :

Private Sub ecran2(txt As TextBox)
If txt = "2E" Then txt = "."
If txt = "30" Then txt = "0"
If txt = "31" Then txt = "1"
If txt = "32" Then txt = "2"
If txt = "33" Then txt = "3"
If txt = "34" Then txt = "4"
If txt = "35" Then txt = "5"
If txt = "36" Then txt = "6"
If txt = "37" Then txt = "7"
If txt = "38" Then txt = "8"
If txt = "39" Then txt = "9"

 If txt = "00" Then txt = " "
 If txt = "41" Then txt = "A"
 If txt = "42" Then txt = "B"
 If txt = "43" Then txt = "C"
 If txt = "44" Then txt = "D"
 If txt = "45" Then txt = "E"
 If txt = "46" Then txt = "F"
 If txt = "47" Then txt = "G"
 If txt = "48" Then txt = "H"
 If txt = "49" Then txt = "I"
 If txt = "50" Then txt = "P"
 If txt = "51" Then txt = "Q"
 If txt = "52" Then txt = "R"
 If txt = "53" Then txt = "S"
 If txt = "54" Then txt = "T"
 If txt = "55" Then txt = "U"
 If txt = "56" Then txt = "V"
 If txt = "57" Then txt = "W"
 If txt = "58" Then txt = "X"
 If txt = "59" Then txt = "Y"
 If txt = "4A" Then txt = "J"
 If txt = "4B" Then txt = "K"
 If txt = "4C" Then txt = "L"
 If txt = "4D" Then txt = "M"
 If txt = "4E" Then txt = "N"
 If txt = "4F" Then txt = "O"
 If txt = "5A" Then txt = "Z"
 If txt = "20" Then txt = " "
 End Sub
000000100012000A01000000000000000000000000000000000000000000000000000000000000001101


1B


[1]1000003C0000000000000000000000000000000000000000800100000000000AAE6< et ici on a le numero de fichier  le reste c le programme d'une piece a tourner 00002FFFFDFA000000000000088B800000000000000000000000000000000


1C


[1]1000013C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


18


[1]1000023C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


19


[1]1000033C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


1A


[1]1000040A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


16


[1]1000053C010000000F520000412E414C4C0006400000000088B800000000000186A00000012C00000064000000C8000000000000000003010000000100000000


1D


[1]1000063C00000000000000000008000000000000000000000000000000000000000000000000000000000000100200002CF20005000000000000006800A00000


79


[1]1000073C88B8000000000000000000000000000007D00000015E0000000000010000500180002701000100000000000000000000000000000000000000000BB8


C4


[1]1000083C0000000000000064000000000000000000000078100300003CF20001000000000000005000BE000088B8000000000000000000000000000003200000


C6


[1]1000093C012C0008000000010000500188002701000100000000000000000000000000000000000000004D580000717A000000C80000000000000000000000C8


DB


[1]10000A3C160400002F6200050001000000000000001000000BB80000000000000FA000000BB800000BB80000003C000000000002000055010000028000000000


32


[1]10000B3C000000000000000000000000000000000000000000000C8000000000000000000000000000000000160500002F620005000100000000000000100000


77


[1]10000C3C2710000000000000271000000BB800000BB80000006E0000000000060000550100000280000000000000000000000000000000000000000000000000


CC


[1]10000D3C000076C00000000000000000000000000000000018060000200600000001000100000000000000000000000000000000000000000000000000000000


64


[1]10000E3C000000000000000700005601000001F700000058005A000002BC000800070000000186A0000027100000000000000000000000000000000000000000


E0


[1]10000F3C56020000018700000058005A000000000000000000000000286E00001388000000000000000000000000000000000000000056030000210500010000


BD


[1]1000103C005A0000000000000000000000000000FFFF94F80000000000000000000000000000000000004E205604000020830001005800000000000000000000


F6


[1]1000113C000000002774000000000000000000000000000000000000000000004E2056050000010500000000005A000000000000000000000000000000002710


7E


[1]1000123C0000000000000000000000000000000000000000100700003CF20003000000000000002800280000283C000000000000000000000000000001900000


91


[1]1000133C0096000700000007000090000000000007D001F400C807D003E803E80064003200320000000000000000000000000000000000000000000000000000


01


[1]1000143C80000000000001010000138813884E204E2000000000000000000000000000000000000000000000000000000000000000005001800033C100020000


AE


[1]1000153C00000000000000000000353200000000000029040000038400000000000000000000EA60000000785002800033C10002000000000000000000000000


AE


[1]1000163C2904000003840000283C000003E800000000000000000000AFC800000078180800002006000000010001000000000000000000000000000000000000


E8


[1]1000173C00000000000000000000000000000000000700005601000001F700000058005A000002BC000800070000000186A00000271000000000000000000000


D3


[1]1000183C0000000000000000000056020000018700000058005A000000000000000000000000286E000013880000000000000000000000000000000000000000


99


[1]1000193C56030000210500010000005A0000000000000000000000000000FFFF92A00000000000000000000000000000000000003A9856040000208300010058


11


[1]10001A3C00000000000000000000000000002710000000000000000000000000000000000000000000003A9856050000010500000000005A0000000000000000


84


[1]10001B3C0000000000000000271000000000000000000000000000000000000000001009000020E20003000000000000000000280000283C0000000000000000


84


[1]10001C3C00000000000000000000000000000000000700005001800033C1000200000000000000000000000035DF0000000000002904000003B6000000000000


B8


[1]10001D3C00000000EA60000000465002800033C100020000000000000000000000002904000003B60000283C0000041A00000000000000000000AFC800000046


39


[1]10001E3C150A00002C2600010004000100000000003C00000000000000000000000000000000000007D00000003200000000000300005401800027C000000000


CE


[1]10001F3C000000000000000000004D5800006496000030D40000649600000226000000000000000000000032180B000020060000000100010000000000000000


D4


[1]1000203C0000000000000000000000000000000000000000000000000000000500005601000001F700000058005A000004B0000800050000000186A000002710


B8


[1]1000213C000000000000000000000000000000000000000056020000018700000058005A000000000000000000000000AFC8FFFFA0B000000000000000000000


17


[1]1000223C0000000000000000000056030000218700010058005A0000000000000000000000009470FFFF901600000000000000000000000000000000000249F0


00


[1]1000233C56040000208300010058000000000000000000000000000032C8000000000000000000000000000000000000000000002EE056050000208300010058


BD


[1]1000243C00000000000000000000000000001770000000000000000000000000000000000000000000000BB85606000000830000005800000000000000000000


81


[1]1000253C0000000186A0000000000000000000000000000000000000000000000000100C00002CF20005000000000000006800A0000088B80000727400000000


E1


[1]1000263C00000000000007D00000015E000000000004000050018000230100010000000000000000000000000000000000000000000000007274000000000000


82


[1]1000273C000000000000000000C8050D0000002A00000001000000010000270F0000000000000000000000000000000000000000000000000000000000000000


88


[1]1000283C030100000000000000001002010500000001000010030001000000080000100301010000000100001604000500000002000016050005000000060000


6C


[1]1000293C1806000000000007000010070003000000070000100701030000000700001808000000000007000010090103000000070000150A0101000000030000


A6


[1]10002A14180B0000000000050000100C010500000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000


57


[1]12000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


03


p2[1]20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


02


 donc pas facile déjà j'ai galerer a tout decoder.



Yo ManaM oY

Re : Excel ajout d'enregistrement avec timer le 17/02/2008 18:29:11

MPi
Ça reste que ça devrait pouvoir tout se faire sous Excel, en principe. VBA, c'est presque la même chose que VB. La syntaxe est un peu différente, mais tu as à peu près les mêmes possibilités.

Ça vaudrait peut-être le coup d'essayer. Si tu copies tout ton code dans un module d'Excel, tu n'auras peut-être rien à changer, ou très peu, je pense.

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI


Re : Excel ajout d'enregistrement avec timer le 17/02/2008 18:34:49

LolPiratas
ok je vais essayer de voir si il y a une possibiliter, mais du a un blem de pc j'avais perdu mon project, donc j'ai repris une sauvegarde pour recommencer et j'avais reussi sans blem avec excel, en tout les cas je te remerci de ta patience.

Yo ManaM oY


Classé sous : programme, enregistrement, excel, t2, ajout

Participer à cet échange

Pub



Appels d'offres

WEB DESIGN
Budget : 1 000€
Plugin Dialer outlook
Budget : 2 000€
Travail graphique- ill...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS