Accueil > Forum > > > > créer ou afficher un point (pixel) sur l'écran ou la feuille
créer ou afficher un point (pixel) sur l'écran ou la feuille
dimanche 22 janvier 2006 à 00:57:59 |
créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
Bonjour. (sous vba) Quelqu'un pourrais me dire qu'elle le code qu'il faut écrire pour tout simplement : créer ou afficher un point (pixel) sur l'écran ou la feuille. Exemple: sub toto() worksheet.shape.point(420,250).color = 1 end sub En vous remerciant par avance , la recherche de cette solution n'a pas été concluante j'usqu'a maintenant. J5eme3110
|
|
dimanche 22 janvier 2006 à 19:18:02 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
salut, voici 8 points, mais en VB6..... Option Explicit Private Declare Function SetPixel Lib "gdi32" _ (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, _ ByVal crColor As Long) As Long Private Sub Form_Load() Me.AutoRedraw = True Me.BackColor = vbWhite Call SetPixel(Me.hdc, 100, 100, vbBlue) Call SetPixel(Me.hdc, 100, 120, vbBlue) Call SetPixel(Me.hdc, 100, 140, vbBlue) Call SetPixel(Me.hdc, 100, 160, vbBlue) Call SetPixel(Me.hdc, 120, 100, vbRed) Call SetPixel(Me.hdc, 120, 120, vbRed) Call SetPixel(Me.hdc, 120, 140, vbRed) Call SetPixel(Me.hdc, 120, 160, vbRed) End Sub 
Coloration syntaxique automatique [AFCK]
çà devrait fonctionner... @+ PCPT [AFCK]
|
|
lundi 23 janvier 2006 à 00:08:50 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
Merci beaucoup. Mais cela ne fonctionne pas
"ME" ne fonctionne pas!
VBA sous (Excel 2003) ne reconnait pas non plus la fonction "SetPixel".
La fonction n'est pas dans library! Est ce cela? Si oui, est il possible de télécharger une library?
|
|
lundi 23 janvier 2006 à 00:26:08 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
Me en VB6 correspond à la Form. essaie en remplaçant par le nom de ta UserForm (sans garantie) si çà fonctionne dans le princpe, mais que la UserForm ne contient pas de hDC, pose une PictureBox et met le code pour cette Pic. pour la librairie, gdi32 fait parti de Windows..... logiquement les API sont utilisables par les macros mais regarde les sources... peut-être y a t'il des spécificités de déclarations... ++
|
|
lundi 23 janvier 2006 à 00:55:02 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
merci
alors remplacement de "me" par UF1 (userform) ok AUTOREDRAW ne fonctionne pas avec vba alors remplacer par DRAWBUFFER exemple: uf1.drawbuffer = 170000 car uf1.drawbuffer = true ne fonctionne pas car apparement erreur d'execution '380' Impossible de définire la propriété de drawbuffer. Valeur de propriété non valide.Entrez une valeur entre 16000 et 1048576.
A quoi correspond autoredraw en vb ou pour mon cas drawbuffer en vba ?
Autrement en appelant la fonction "setpixel" fonction pas "erreur de compilation :argument non facultatif" Que faut il faire??
Je te remercie pour tes infos bien utile. Je ne suis toujours pas sortie de l'auberge.*
cordialement j5em3110
|
|
lundi 23 janvier 2006 à 01:01:55 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
autoredraw pour VB6 est un booléen. c'est pour que la fenêtre survolant la Form ne l'efface pas. (exemple, un msgbox qui supprimerait alors ces points) je ne connais pas VBA, mais une propriétés "DrawBuffer" ne m'inspirerait pas confiance pour ce cas.... argument non facultatif.... tu es certain de la syntaxe? cad la déclaration et les parenthèses? si pas de parenthèse, pas de Call bon courage...
|
|
lundi 23 janvier 2006 à 01:35:07 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
Merci exact pas de call
Mais toujours un probleme (je me rapproche du but merci encore) ********************************** dans la ligne --> SetPixel(UF1.hdc, 100, 100, vbBlue) = 1 "Erreur de comp : Membre de méthode ou de données introuvable" et met en surbrillance la variable hdc pour me signaler que la est l'erreur *************************************** SetPixel(UF1, 100, 100, vbBlue) = 1 il me detecte encore une erreure de compilation mais je seche Je site : "Un appel de fonction dans la partie gauche de l'affectation doit renvoyer Variant ou Object" ************************************************** Quand je met hdc tout seul il rale et dit : erreure de compile ça je sais lol mais aussi "Variable non définit" **************************************************
Et au cas ou j'arriva à aller jusqu'a la fin de la parenthese pares le = il faut que je mette quoi au juste car j'ai mis 1 mais j'aurais pu mettre 2 car je croyais que je definisais n°d ecouleur.
Merci de bien vouloir essayer de m'aider
coordialement j5em3110
|
|
lundi 23 janvier 2006 à 01:46:43 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
la couleur est le 4 paramètre si tu veux récupérer une valeur, alors : MaValeurLong = setpixel(MonDeviceContext, MapositionX, MaPositionY, MaCouleurLong) cette valeur ( MaValeurLong) sera la valeur la plus proche possible de MaCouleurLong. mais une simple SetPixel MonDC, x, y, MaCouleurLong doit suffir.... (pas de parenthèse dans ce cas  ) as-tu essayé dans une picturebox? au cas où la propriété hDC n'existe pas..... toujours est-il que tu ne peux pas attribuer de valeur à une fonction, c'est l'inverse !!! donc pas de MaFonction = Mavaleur
|
|
lundi 23 janvier 2006 à 02:24:05 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
Alors j'ai trouver comment on ecrit le truc mais je ne sais pas quoi en faire pour crée un créer un point ou pixel sur l'ecran ou dans une shape.
j'ai écrit dans le module:
***************************************************** Option Explicit Private Declare Function SetPixel Lib "gdi32" _ (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, _ ByVal crColor As Long) As Long Public MaValeurLong As Long ____________________________________________________________ Private Sub Form_Load() MaValeurLong = SetPixel(10, 5, 5, 4) end sub
_________________________________________________ Sub toto() Call Form_Load
End Sub *********************************************************
Je recupere dans la variable MaValeurLong = -1 je ne sais pourquoi Mais bon si cela peut m'aidé pour crée un point en coueur 4 je veux bien.
Merci de continuer si tu peux tu m'est d'une grande aide.
cordialement Jonathan 27 ans paris
|
|
lundi 23 janvier 2006 à 03:07:51 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
tu récupères -1 parce que l'API te renvoie une erreur. le HDC (Handle Device Context) est l'objet sur lequel tu veux dessiner. donc ta Form ou une PICTURE que tu vas essayer (parce qu'on tourne en boucle là....) or toi, tu dis à l'API d'aller faire ses points dans "10" qui ne veux rien dire en soit... donc pose une PictureBox pour essayer, tu lui mets la propriété autoredraw à true (si çà existe en VBA) et tu essayes par exemple MaValeurLong = SetPixel(Picture1.hdc, 100, 100, 255) MaValeurLong devrait te renvoyer 255 et tu devrait avoir un point rouge... (code de 255)
|
|
Cette discussion est classée dans : créer, afficher, feuille, écran, pixel
Répondre à ce message
Sujets en rapport avec ce message
Afficher une feuille a l'écran [ par Rox74 ]
Bonjour a tous,Je suis débutant en vba et il me manque du language vba pour pouvoir résoudre mes problmes donc je fais appel à vos lumières.Voila mon
Capture de fenêtre minimisée [ par tdt63 ]
Bonjour,Je cherche à réaliser un programme permettant d'enregistrer comme image le contenu d'une fenêtre, et cela sans jamais l'afficher à l'écran. Qu
Afficher des infos a partir d'une feuille [ par YVO22 ]
Bonjour a tousJ'ai crée une feuille dans laquelle je range des informations sous forme de base de données et ceci a partir d'une userform.J'ai crée un
interface de recherche [ par ilhambousfiha ]
Bonjour tout le monde,J ai une application qui consiste à créer un interface de recherche pour l utilisateur, je m 'explique:Je posséde une feuille de
créer des classeurs excel en fonction des données d'une feuille. [ par sinxay ]
Boujour,Je débute avec un peu de mal, mais j'ai déjà trouvé comment rassembler plusieurs classeurs excel indentiques sur une seule feuille.Mais biensu
comment afficher une feuille excel [ par mythiac ]
bonjour,j'ai un petit problème, tout con pour vous je pense, mais qui est bien présent pour moi:je désire que s'affiche par ma macro un onglet de mon
création feuille via filtre - copie colle ligne dans nouvelle feuille suivant valeur d'une cellule d'une feuille référence [ par carom31 ]
Bonjour à tous, Ma situation est la suivante: j'ai une feuille de référence avec plusieurs colonnes du type: [b]Référence Authors Year Title Source
Problème pour la réalisation d'un macro VB sur excel [ par pierrecouture ]
Bonjour, dans le cadre de mon stage de fin d'étude je travaille sur la mise en place d'un process de gestion et j'aurais besoin de créer des macro en
Assistant Feuille de données [ par wtor ]
Je cherche un assistant pour créer des feuilles de données (Ajout, Modification, Suppression, Recherche), et es que je peut créer un assistant pour cr
Programme vba [ par psgman277 ]
Bonjour, Voilà mon problème, Je travaille dans la comptabilité, et je souhaiterai créer un programme vba mais je suis débutant et je ne suis pas très
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
VB.NET ET COMBOBOXVB.NET ET COMBOBOX par minouthebreaker
Cliquez pour lire la suite par minouthebreaker
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|