A voir également:
- Projet vba en excel sur les jeux
- Liste déroulante excel - Guide
- Zuma jeux - Télécharger - Jeux vidéo
- Mise en forme conditionnelle excel - Guide
- Formule excel - Guide
- Si et excel - Guide
7 réponses
xvyr
Messages postés
14
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
22 avril 2009
1
25 mai 2007 à 22:45
25 mai 2007 à 22:45
bonjour
j'ai deja réalisé pas mal de projet en VBA(exel) sur un peu de tout
je pose donc la meme question que marchand : que cherches tu exactement ?
j'ai deja réalisé pas mal de projet en VBA(exel) sur un peu de tout
je pose donc la meme question que marchand : que cherches tu exactement ?
xvyr
Messages postés
14
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
22 avril 2009
1
25 mai 2007 à 23:02
25 mai 2007 à 23:02
pour la réalisation de jeux vous utilisez des objets ou des caracteres/couleurs avec les cellule ?
pour ce qui est des objets j'aimerai savoir si c'est possible de les deplacer lentement d'un point à un autre.j'ai essayer ceci mais ça ne marche pas
ActiveSheet.Shapes("Oval 1").Select
For i = 1 To 500
Selection.ShapeRange.IncrementLeft 1
Next i
l'objet se deplace d'un seul coup
pour ce qui est des objets j'aimerai savoir si c'est possible de les deplacer lentement d'un point à un autre.j'ai essayer ceci mais ça ne marche pas
ActiveSheet.Shapes("Oval 1").Select
For i = 1 To 500
Selection.ShapeRange.IncrementLeft 1
Next i
l'objet se deplace d'un seul coup
Utilisateur anonyme
27 mai 2007 à 15:29
27 mai 2007 à 15:29
Bonjour,
ce code :
ActiveSheet.Shapes("Oval 1").Select
For i = 1 To 500
Selection.ShapeRange.IncrementLeft 1
Next i
implique que le travail de la boucle est exécuté dans
un delai d'environ 500 millisecondes.
essayer :
vous devriez donc exécuter le travail dans un delai d'environ
500 secondes !
Lupin
ce code :
ActiveSheet.Shapes("Oval 1").Select
For i = 1 To 500
Selection.ShapeRange.IncrementLeft 1
Next i
implique que le travail de la boucle est exécuté dans
un delai d'environ 500 millisecondes.
essayer :
ActiveSheet.Shapes("Oval 1").Select For i = 1 To 500 Selection.ShapeRange.IncrementLeft 1 For j = 1 To 1000 K = k + 1 Next j Next i
vous devriez donc exécuter le travail dans un delai d'environ
500 secondes !
Lupin
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
xvyr
Messages postés
14
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
22 avril 2009
1
27 mai 2007 à 17:26
27 mai 2007 à 17:26
ça ne marche pas. l'ordinateur met effectivement plus de temps à calculer mais n'affiche pas les déplacement intermédiaires, seulement le résultat final. il faudrait une instruction qui actualise l'écran mais je ne sais pas si cela existe.
Utilisateur anonyme
28 mai 2007 à 13:40
28 mai 2007 à 13:40
Bonjour,
et comme ceci :
Lupin
et comme ceci :
Sub Deplace() Dim i As Integer Sheets("Feuil1").Shapes("Oval 1").Select For i = 1 To 500 Application.ScreenUpdating = False Selection.ShapeRange.IncrementLeft 1 Application.ScreenUpdating = True Next i End Sub '
Lupin
La solution de rajouter une boucle inutile dans la première boucle va effectivement ralentir l'exécution, mais en aucun cas garantir la durée du traitement. En effet cette durée va être inversement proportionnelle à la vitesse du processeur.
Je vous conseille plutôt d'utiliser la fonction 'Wait', qui permet elle de déterminer un temps d'attente, en millisecondes, avant d'effectuer une action.
Il est possible qu'il faille également rajouter les 'ScreenUpdating', comme le suggérait Lupin.
Bon courage
Baptiste
Je vous conseille plutôt d'utiliser la fonction 'Wait', qui permet elle de déterminer un temps d'attente, en millisecondes, avant d'effectuer une action.
Il est possible qu'il faille également rajouter les 'ScreenUpdating', comme le suggérait Lupin.
Bon courage
Baptiste