Ton bloc notes
Derniers sujets
» [ PRESENTATION ] MaxB
par tenrev Hier à 21:10
» [ SKETCHUP composants dynamiques ] animation d'une tablette
par tenrev Ven 20 Mai 2022 - 17:40
» [ UNREAL ENGINE ] premier essai d'animation dans Unreal 5
par jerryvento Jeu 19 Mai 2022 - 19:26
» [ SKETCHUP plugins ] list, nomenclature
par davidheritier Mer 18 Mai 2022 - 12:35
» [ KEYSHOT ] COMMENT CREER UN MATERIAU AVEC PLUSIEURS BUMP
par Yanosh HRDY Mar 17 Mai 2022 - 8:36
» [ AUTRES LOGICIELS ] ONSHAPE free
par Pilou Dim 15 Mai 2022 - 2:38
» [ SKETCHUP généralité ] Convertir un fichier 3ds pour Sketchup 2017
par PEGASE Sam 14 Mai 2022 - 16:20
» [ PRESENTATION ] NFSL
par Rascal Ven 13 Mai 2022 - 19:40
» [ ARCHICAD-IMPORT/EXPORT ] TUTO - Exporter un projet entier en DWG de manière efficace.
par Farkas Ven 13 Mai 2022 - 14:53
» [ MATOS INFORM. ] Mac Studio ou PC ?
par freroil Ven 13 Mai 2022 - 11:04
» [ PRESENTATION ] Sebsil11
par freroil Ven 13 Mai 2022 - 10:55
» [ UNREAL ENGINE ] des images enregistrées dans Unreal 5 issues du projet de Matrix
par Fred0079 Ven 13 Mai 2022 - 10:25
» [ WIP ] [Unreal Engine] Création d'un processus de rendu et de co-conception
par tenrev Jeu 12 Mai 2022 - 17:48
» [ TWINMOTION ] A la recherche du fond perdu!
par Pistou Jeu 12 Mai 2022 - 9:28
» [ UNREAL ENGINE ] plugin d’export de Sketchup vers Unreal 5
par simjoubert Mer 11 Mai 2022 - 22:17
» [ AUTRES LOGICIELS ] SPline En ligne
par Pilou Mar 10 Mai 2022 - 13:06
» [ AUTRES LOGICIELS ] MOI 3D 5.0 Beta Avril 2022 : Mac, PC
par Pilou Lun 9 Mai 2022 - 10:13
» [ SKETCHUP généralité ] HELP EXPORTATION DWG OU DXF
par JDD Lun 9 Mai 2022 - 9:52
» [ SKETCHUP plugins ] plugin blb bois
par Rascal Dim 8 Mai 2022 - 18:25
» [ THEA RENDER ] Bug
par lionel Claude Jeu 5 Mai 2022 - 7:48
» [ TWINMOTION ] CLOTURE GRILLAGEE
par FanouPeb Mer 4 Mai 2022 - 14:50
» [ UNREAL ENGINE ] la version 5 finale est dispo
par tenrev Mer 4 Mai 2022 - 14:07
» [ TWINMOTION ] sortie de la version 2022.2 Preview 1
par tenrev Mer 4 Mai 2022 - 14:01
» [ SKETCHUP Layout ] Freeze des options du modele
par sebsil11 Mar 3 Mai 2022 - 10:55
» [ SKETCHUP Généralités] Comment gerer l'etat d'une balise sur plusieurs scenes en meme temps
par davidheritier Mar 3 Mai 2022 - 10:50
» [ SKETCHUP plugins ] Curic Scene Manager
par tenrev Mar 3 Mai 2022 - 9:42
» [ SKETCHUP généralité ] Formation Brest
par Christophe Fortineau Lun 2 Mai 2022 - 12:53
» [ SKETCHUP plugins ] boolean
par JDD Lun 2 Mai 2022 - 11:55
» [ SKETCHUP plugins ] SJ Batch Export Scenes To Thumbnails
par simjoubert Dim 1 Mai 2022 - 22:20
» [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes
par simjoubert Sam 30 Avr 2022 - 10:59
» [ AUTRES LOGICIELS ] APC render+
par tenrev Jeu 28 Avr 2022 - 8:20
» [ SKETCHUP généralité ] Conversion objets sketchup en objets artlantis
par ELO2A Mer 27 Avr 2022 - 22:21
» [ SKETCHUP généralité ] bouton d'outils disparus
par furax49 Mer 27 Avr 2022 - 6:58
» [ SKETCHUP généralité ] SECTION, COUPE (+ ONGLET) FACILES d'une Maison, de n'importe quel dessin...
par jerryvento Mar 26 Avr 2022 - 14:31
» [ SKETCHUP tutos ] SECTION, COUPE (+ ONGLET) FACILES d'une Maison, de n'importe quel dessin...
par jerryvento Lun 25 Avr 2022 - 16:03
par tenrev Hier à 21:10
» [ SKETCHUP composants dynamiques ] animation d'une tablette
par tenrev Ven 20 Mai 2022 - 17:40
» [ UNREAL ENGINE ] premier essai d'animation dans Unreal 5
par jerryvento Jeu 19 Mai 2022 - 19:26
» [ SKETCHUP plugins ] list, nomenclature
par davidheritier Mer 18 Mai 2022 - 12:35
» [ KEYSHOT ] COMMENT CREER UN MATERIAU AVEC PLUSIEURS BUMP
par Yanosh HRDY Mar 17 Mai 2022 - 8:36
» [ AUTRES LOGICIELS ] ONSHAPE free
par Pilou Dim 15 Mai 2022 - 2:38
» [ SKETCHUP généralité ] Convertir un fichier 3ds pour Sketchup 2017
par PEGASE Sam 14 Mai 2022 - 16:20
» [ PRESENTATION ] NFSL
par Rascal Ven 13 Mai 2022 - 19:40
» [ ARCHICAD-IMPORT/EXPORT ] TUTO - Exporter un projet entier en DWG de manière efficace.
par Farkas Ven 13 Mai 2022 - 14:53
» [ MATOS INFORM. ] Mac Studio ou PC ?
par freroil Ven 13 Mai 2022 - 11:04
» [ PRESENTATION ] Sebsil11
par freroil Ven 13 Mai 2022 - 10:55
» [ UNREAL ENGINE ] des images enregistrées dans Unreal 5 issues du projet de Matrix
par Fred0079 Ven 13 Mai 2022 - 10:25
» [ WIP ] [Unreal Engine] Création d'un processus de rendu et de co-conception
par tenrev Jeu 12 Mai 2022 - 17:48
» [ TWINMOTION ] A la recherche du fond perdu!
par Pistou Jeu 12 Mai 2022 - 9:28
» [ UNREAL ENGINE ] plugin d’export de Sketchup vers Unreal 5
par simjoubert Mer 11 Mai 2022 - 22:17
» [ AUTRES LOGICIELS ] SPline En ligne
par Pilou Mar 10 Mai 2022 - 13:06
» [ AUTRES LOGICIELS ] MOI 3D 5.0 Beta Avril 2022 : Mac, PC
par Pilou Lun 9 Mai 2022 - 10:13
» [ SKETCHUP généralité ] HELP EXPORTATION DWG OU DXF
par JDD Lun 9 Mai 2022 - 9:52
» [ SKETCHUP plugins ] plugin blb bois
par Rascal Dim 8 Mai 2022 - 18:25
» [ THEA RENDER ] Bug
par lionel Claude Jeu 5 Mai 2022 - 7:48
» [ TWINMOTION ] CLOTURE GRILLAGEE
par FanouPeb Mer 4 Mai 2022 - 14:50
» [ UNREAL ENGINE ] la version 5 finale est dispo
par tenrev Mer 4 Mai 2022 - 14:07
» [ TWINMOTION ] sortie de la version 2022.2 Preview 1
par tenrev Mer 4 Mai 2022 - 14:01
» [ SKETCHUP Layout ] Freeze des options du modele
par sebsil11 Mar 3 Mai 2022 - 10:55
» [ SKETCHUP Généralités] Comment gerer l'etat d'une balise sur plusieurs scenes en meme temps
par davidheritier Mar 3 Mai 2022 - 10:50
» [ SKETCHUP plugins ] Curic Scene Manager
par tenrev Mar 3 Mai 2022 - 9:42
» [ SKETCHUP généralité ] Formation Brest
par Christophe Fortineau Lun 2 Mai 2022 - 12:53
» [ SKETCHUP plugins ] boolean
par JDD Lun 2 Mai 2022 - 11:55
» [ SKETCHUP plugins ] SJ Batch Export Scenes To Thumbnails
par simjoubert Dim 1 Mai 2022 - 22:20
» [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes
par simjoubert Sam 30 Avr 2022 - 10:59
» [ AUTRES LOGICIELS ] APC render+
par tenrev Jeu 28 Avr 2022 - 8:20
» [ SKETCHUP généralité ] Conversion objets sketchup en objets artlantis
par ELO2A Mer 27 Avr 2022 - 22:21
» [ SKETCHUP généralité ] bouton d'outils disparus
par furax49 Mer 27 Avr 2022 - 6:58
» [ SKETCHUP généralité ] SECTION, COUPE (+ ONGLET) FACILES d'une Maison, de n'importe quel dessin...
par jerryvento Mar 26 Avr 2022 - 14:31
» [ SKETCHUP tutos ] SECTION, COUPE (+ ONGLET) FACILES d'une Maison, de n'importe quel dessin...
par jerryvento Lun 25 Avr 2022 - 16:03
formulaire/diaporama
Excell et liste de choix
Page 1 sur 2 • 1, 2
Je vous explique mon nouveau problème qui, j'espère, trouvera sa solution.
Je suis en train de réaliser une fiche d'estimation rapide de logements sur excell mais je suis confronté à plusieurs problèmes dont celui-ci :
J'ai fait une liste de choix avec les différents types de constructions que je veux estimer (construction ossature bois et construction traditionnelle) et je voudrais pouvoir, lorsque je choisis tel ou tel type, "programmer" la valeur de base de l'estimation.
Par exemple : je choisis construction ossature bois : le prix de base est de X€ du m², je rentre mes surfaces et j'ai mon estim. Si je choisis après "construction traditionnelle", le prix de base se modifie et recalcule mon estim.
Il me manque juste savoir comment lier la liste de choix avec le prix de base
Algorithme simple :
Si cellule A contient "construction ossature bois" alors cellule B = prix X (le prix X est dans cellule X)
Si cellule A contient "construction traditionnelle" alors cellule B = prix Y (le prix Y est dans cellule Y)
Sinon cellule B = 0
Mais je n'arrive pas à coder cela en mettant cette structure.
Je suis en train de réaliser une fiche d'estimation rapide de logements sur excell mais je suis confronté à plusieurs problèmes dont celui-ci :
J'ai fait une liste de choix avec les différents types de constructions que je veux estimer (construction ossature bois et construction traditionnelle) et je voudrais pouvoir, lorsque je choisis tel ou tel type, "programmer" la valeur de base de l'estimation.
Par exemple : je choisis construction ossature bois : le prix de base est de X€ du m², je rentre mes surfaces et j'ai mon estim. Si je choisis après "construction traditionnelle", le prix de base se modifie et recalcule mon estim.
Il me manque juste savoir comment lier la liste de choix avec le prix de base
Algorithme simple :
Si cellule A contient "construction ossature bois" alors cellule B = prix X (le prix X est dans cellule X)
Si cellule A contient "construction traditionnelle" alors cellule B = prix Y (le prix Y est dans cellule Y)
Sinon cellule B = 0
Mais je n'arrive pas à coder cela en mettant cette structure.
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Tu veux du code vba ou une formule ?
-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
formule à copier dans B1
X le tarif construction ossature bois , Y tarif tradi .
ce qui veux dire : si la cellule A1 est égale à "construction ossature bois " alors affiche "x" sinon affiche "y".=SI(A1="construction ossature bois";"x";"y")
X le tarif construction ossature bois , Y tarif tradi .
-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
pour x et y, je peux remplacer par l'adresse d'une cellule?
comme ça :
=SI(A1="construction ossature bois";A3;A4)
je vais tester.
comme ça :
=SI(A1="construction ossature bois";A3;A4)
je vais tester.
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
bien sur
-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Code vba a copier dans Workbook
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If [A1] = ("construction ossature bois") Then
[B1] = "x"
End If
If [A1] = ("construction traditionelle") Then
[B1] = "y"
End If
End Sub
-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
ga a écrit:Code vba a copier dans WorkbookPrivate Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If [A1] = ("construction ossature bois") Then
[B1] = "x"
End If
If [A1] = ("construction traditionelle") Then
[B1] = "y"
End If
End Sub
Enfin, là on joue pas dans la même catégorie... et par rapport à toi, je suis newby sur excell... moi ça reste du basique...
T'as appris tout ça où?
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
En créant mon petit "logiciel" Devis&Facture sur la base d'excel , il existe des tas de cours sur excel ,code vba , des forums comme celui-ci et puis Google bien sur .
Pour moi excel est le meilleur des logiciel ... c'est fou tout se qu'on peux en faire .
Pour moi excel est le meilleur des logiciel ... c'est fou tout se qu'on peux en faire .
-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- jojo2modérateur
- Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170
ga a écrit:En créant mon petit "logiciel" Devis&Facture sur la base d'excel , il existe des tas de cours sur excel ,code vba , des forums comme celui-ci et puis Google bien sur .
Pour moi excel est le meilleur des logiciel ... c'est fou tout se qu'on peux en faire .
Je plussoie ton avis sur Excel!

Même s'il n'a pas la portabilité d'autres logiciels, il est très complet et permet de créer facilement des maquettes fonctionnelles voire de très bonnes applis individuelles.
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Salut jojo2
_Tu travail sur excel aussi , moi c'était surtout pour me simplifier la vie avec mes devis/facture , maintenant c'est devenu une vrais passion , je cherche toujour d'améliorer mon fichier 'Devis&Facture" tarif auto , userforms , enregistrement auto , imprimer auto avec image de fond , base de donnée pratiquement tout en VBA , je me m'amuse comme un fou
.
_Si tu trafique un peu sur excel VBA je te poserais une question , je suis coincé avec une sortie de Sub via une userform
_Tu travail sur excel aussi , moi c'était surtout pour me simplifier la vie avec mes devis/facture , maintenant c'est devenu une vrais passion , je cherche toujour d'améliorer mon fichier 'Devis&Facture" tarif auto , userforms , enregistrement auto , imprimer auto avec image de fond , base de donnée pratiquement tout en VBA , je me m'amuse comme un fou


_Si tu trafique un peu sur excel VBA je te poserais une question , je suis coincé avec une sortie de Sub via une userform


-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- jojo2modérateur
- Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170
Salut Ga,
J'eus bricolé le VBA effectivement.
Pose toujours ta question et j'y répondrai avec plaisir si c'est dans mes cordes.
Mais je suppute déja le problème des variables locales de VB.
J'eus bricolé le VBA effectivement.
Pose toujours ta question et j'y répondrai avec plaisir si c'est dans mes cordes.
Mais je suppute déja le problème des variables locales de VB.

- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Alors voilas mon code
Simplement avant l'enregistrement je vérifie si l'utilisateur a bien imprimer le document , si oui le programme continu , si non il va directement a End sub (il n'enregistre pas ) comme un GOTO .
Voilas mon souci en espérant que tu puise m'aidé sa serais cool
:icon_mrgreen: :icon_mrgreen:
- Code:
Sub Enregister()
If ControlImprimer = 0 Then
AttentionImprimer.Show <====== problème dans cette userform
End If
If (Range("G1").Value = "") Then
LaisserLaTva.Show
End If
If (Range("A10").Value = "DEVIS") Then
With ActiveSheet
Dossier = CStr(.Range("A10").Value)
Fichier = CStr(.Range("d11").Value) & (.Range(" B5").Value) & (.Range("A2").Value) & Format(Date, " dd-mm-yyyy")
DossierMere = "J:\devis"
End With
If Trim(Dossier) = "" Then Exit Sub
If Trim(Fichier) = "" Then Exit Sub
Dim Nom As String
Nom = [b5]
Sheets("Devis").Copy
ActiveWorkbook.SaveAs "j:" & Dossier & "" & Fichier & ".xls"
Workbooks("Devis&Facture++.xls").Close False
Else
TTC = Sheets("Devis").Range("E97").Value
Sheets("Chiffre d'affaire").Range("A500").End(xlUp).Offset(1, 0).Value = TTC
With ActiveSheet
Dossier = CStr(.Range("A10").Value)
Fichier = CStr(.Range("d11").Value) & " " & (.Range(" B5").Value) & Format(Date, " dd-mm-yyyy")
DossierMere = "J:\devis"
End With
If Trim(Dossier) = "" Then Exit Sub
If Trim(Fichier) = "" Then Exit Sub
Nom = [b5]
Sheets("Devis").Copy
ActiveWorkbook.SaveAs "J:" & Dossier & "" & Fichier & ".xls"
'sélectionne un classeur
Workbooks("Devis&Facture++.xls").Activate
Sheets("Sauvegarde").Select
Range("A2:E99").Select
Selection.Copy
Sheets("Devis").Select
Range("A2:E99").Select
ActiveSheet.Paste
Range("B5").Select
Sheets("Sauvegarde").Select
Range("B5").Select
Application.CutCopyMode = False
Sheets("Options").Range("e2").Value = Sheets("Options").Range("e2").Value + 1
Sheets("Devis").Select
Rows("41:94").Select
Selection.EntireRow.Hidden = True
ActiveWindow.SmallScroll Down:=-51
Range("B5").Select
Workbooks("Devis&Facture++.xls").Close True
End If
<============ j'aimerais une fois cliqué sur "Annuler" dans ma userform AttentionImprimer.Show que le programme arrive ici
End Sub
Simplement avant l'enregistrement je vérifie si l'utilisateur a bien imprimer le document , si oui le programme continu , si non il va directement a End sub (il n'enregistre pas ) comme un GOTO .
Voilas mon souci en espérant que tu puise m'aidé sa serais cool
:icon_mrgreen: :icon_mrgreen:
-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- jojo2modérateur
- Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170
Il me faudrait le code de ton userForm "AttentionImprimer" pour bien comprendre.
Mais avec les éléments que tu m'as donné, je pense que le principe serait:
Dans AttentionImprimer:
Dans ton Main:
A tester car j'ai écrit ce code de mémoire veille de 8 ans maintenant...
Mais avec les éléments que tu m'as donné, je pense que le principe serait:
Dans AttentionImprimer:
- Code:
Public Annulation = false
Private Sub UserForm_Activate()
Me.Annulation = false
End Sub
Private Sub Bouton_ANNULER_Click():
Me.Annulation = true
Unload Me
End Sub
Dans ton Main:
- Code:
Sub Enregister()
If ControlImprimer = 0 Then
AttentionImprimer.Show
if AttentionImprimer.Annulation = true Then Exit Sub
End If
If (Range("G1").Value = "") Then
etc....
A tester car j'ai écrit ce code de mémoire veille de 8 ans maintenant...

- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Merci joj2
Je regarde çà demain et je te tiens au courant
Merci de ton aide
Je regarde çà demain et je te tiens au courant

Merci de ton aide

-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- jojo2modérateur
- Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170
de rien!

- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Bonsoir
j'ai modifier des lignes car il me renvoyé quelques erreurs voilas ce que sa donne :
Ainsi que celui-ci :
j'ai modifier des lignes car il me renvoyé quelques erreurs voilas ce que sa donne :
- Code:
Private Sub AttentionImprimer_Activate()
Me.Annuler = True
End Sub
Private Sub Annuler_Click()
Me.Annuler = False
Unload Me
End Sub
Private Sub Ok_Click()
Unload Me
End Sub
Ainsi que celui-ci :
- Code:
Sub Enregister()
If ControlImprimer = 0 Then
AttentionImprimer.Show
If AttentionImprimer.Annuler = True Then Exit Sub
End If
If (Range("G1").Value = "") Then etc..........


je n'ai pas de code pour l'userForm , c'est juste une UserForm avec un Label "Vous n'avez pas inprimer ce document !" un deuxiéme Label "Il ne vous sera plus possible de le faire après avoir cliqué sur Ok" avec un bouton "Ok" puis un autre "Annuler" c'est tout .....Il me faudrait le code de ton userForm "AttentionImprimer" pour bien comprendre.
-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Dommage que l'on puise pas faire tout simplement comme ça :
le problème c'est que les variables ne se communiques pas entre sub
- Code:
Private Sub AttentionImprimer_Activate()
A = 0
End Sub
Private Sub Annuler_Click()
A = 1
Unload Me
End Sub
Private Sub Ok_Click()
Unload Me
End Sub
- Code:
Sub Enregister()
If ControlImprimer = 0 Then
AttentionImprimer.Show
If A = 1 Then Exit Sub
End If
If (Range("G1").Value = "") Then etc ......



le problème c'est que les variables ne se communiques pas entre sub


-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- jojo2modérateur
- Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170
Salut Ga,
Ton code ne peut pas marcher car tu donnes le même nom "Annuler" à la variable et au bouton. Le bouton n'étant plus actif quand tu vérifies la valeur, tu obtiendras toujours false.
De là, une petite astuce en VB: essaie toujours de nommer tes objets graphiques comme "Bouton_OK", "Liste_Choix" ou "Form_Impression", ça évitera beaucoup de confusions avec la fonction Me.
De plus, si ton formulaire est aussi réduit, pourquoi n'utilises tu pas une Message Box à la place du fomulaire?
Ton code ne peut pas marcher car tu donnes le même nom "Annuler" à la variable et au bouton. Le bouton n'étant plus actif quand tu vérifies la valeur, tu obtiendras toujours false.
De là, une petite astuce en VB: essaie toujours de nommer tes objets graphiques comme "Bouton_OK", "Liste_Choix" ou "Form_Impression", ça évitera beaucoup de confusions avec la fonction Me.

De plus, si ton formulaire est aussi réduit, pourquoi n'utilises tu pas une Message Box à la place du fomulaire?
- Code:
Sub Enregister()
If ControlImprimer = 0 Then
If MsgBox("Vous n'avez pas inprimer ce document !" & vbCrLf _
& "Il ne vous sera plus possible de le faire après avoir cliqué sur Ok", _
vbOKCancel, "Contrôle d'Impression") = vbCancel Then Exit Sub
End If
...
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Parce que je ne sais pas faire
mais je vais essayé ...




-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Ouaaaaaas sa marche nickel
milles merci jojo2
:icon_mrgreen: :icon_mrgreen:
Par contre je vais avoir un autre problème c'est sur ma deuxième ligne :
Car pour faire le teste j'ai simplement rajouté en fin de ma sub "ImprimerOriginalCopie" ceci :
voici ma sub ImprimerOriginalCopie
PS : Promis sa sera ma dernière question , je profite d’avoir un amoureux du VBA en ligne pour pouvoir m'amélioré
:icon_wink: :icon_wink:


milles merci jojo2


Par contre je vais avoir un autre problème c'est sur ma deuxième ligne :
- Code:
If ControlImprimer = 0 Then
Car pour faire le teste j'ai simplement rajouté en fin de ma sub "ImprimerOriginalCopie" ceci :
- Code:
ControlImprimer = 1
voici ma sub ImprimerOriginalCopie
- Code:
Sub ImprimerOriginalCopie_QuandClic()
'
'
'
' Touche de raccourci du clavier: Ctrl+i
If (Range("G1").Value = "") Then
LaisserLaTva.Show
End If
With ActiveSheet.PageSetup
.BlackAndWhite = True
End With
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
With ActiveSheet.PageSetup
.BlackAndWhite = Faste
End With
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
If Sheets("Devis").Range("G1").Value = ("1") And Range("A10").Value = "DEVIS" Then
Sheets("TVA 5,5%").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("Devis").Select
End If
ControlImprimer = 1
End Sub
PS : Promis sa sera ma dernière question , je profite d’avoir un amoureux du VBA en ligne pour pouvoir m'amélioré

-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
- jojo2modérateur
- Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170
Dans ce cas précis, c'est encore un problème de variable locale.
Alors pour partager une variable dans un script VB, il faut déclarer au début de ta feuille principale (module Main):
Je ne vais pas plus loin car le sujet est vaste.
Content d'avoir pu t'aider.
++
Alors pour partager une variable dans un script VB, il faut déclarer au début de ta feuille principale (module Main):
- Code:
Public ControlImprimer as Integer
Je ne vais pas plus loin car le sujet est vaste.
Content d'avoir pu t'aider.

++
- gaMoulin à parole
-
Humeur : boiseuse ......
Date d'inscription : 02/01/2010
Nombre de messages : 312
Points : 363
Age : 45
Localisation : Chez moi !........
Emploi : Charpentier
Ok et merci encore jojo2 :icon_wink:
-------------------------------------------------------------------------------------------------------------------------
_"Ne compte pas les jours, fais en sorte que chaque jour compte"
Bonne journée à vous !!!!!
Jérôme
Tu m'as coupé l'herbe sous le pied Jérôme il est vraiment superbe se cite merci...ga a écrit:En créant mon petit "logiciel" Devis&Facture sur la base d'excel , il existe des tas de cours sur excel ,code vba , des forums comme celui-ci et puis Google bien sur .
Pour moi excel est le meilleur des logiciel ... c'est fou tout se qu'on peux en faire .


Page 1 sur 2 • 1, 2
Sujets similaires
Créer un compte ou se connecter pour répondre
Vous devez être membre pour répondre.
Page 1 sur 2
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum