Les Allergies
Alimentaires
Posez votre question Signaler

Projet vba en excel sur les jeux

lezin - Dernière réponse le 11 nov. 2010 à 08:47
cherche personne ayant fait deja un projet en vba sue excel ou word, mon adresse mail: lezingouala@yahoo.fr
Lire la suite 

Projet vba en excel sur les jeux »

8 réponses
Réponse
+0
moins plus
Bonjour je réalise des jeux sous excel par macro et VBA
Que cherches tu exactement ?
Ajouter un commentaire
Réponse
+0
moins plus
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 ?
Ajouter un commentaire
Réponse
+0
moins plus
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

Ajouter un commentaire
Réponse
+0
moins plus
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 :
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
Ajouter un commentaire
Réponse
+0
moins plus
ç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.
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

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
Psycho-Bat - 8 juil. 2008 à 17:00
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
Ajouter un commentaire
Réponse
+0
moins plus
voici un code qui marche bien

ActiveSheet.Shapes("Oval 1").Select
For i = 1 To 500
Selection.ShapeRange.IncrementLeft 1
application.calculate 'pour ralentir un peu
Next i


essaie et dis moi
Ajouter un commentaire
Ce document intitulé « projet vba en excel sur les jeux » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?