Ton bloc notes
Derniers sujets
» [ SKETCHUP généralité ] Tête de pilastre
par JDD Aujourd'hui à 16:06
» [ ARCHICAD ] Paramétrage des coupes sur Archicad
par AK40Cess Aujourd'hui à 14:12
» [ CHALLENGE 2024 ] résultats du challenge
par AK40Cess Hier à 13:27
» [ FORUM ] astuce pour insérer facilement un tableau sur le forum
par tenrev Hier à 9:12
» [ SKETCHUP plugins ] une barre d’outils perso
par tenrev Lun 18 Nov 2024 - 15:05
» [ SKETCHUP généralité ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:47
» [ SKETCHUP généralité ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:47
» [ SKETCHUP généralité ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:46
» [ SKETCHUP tutos ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:45
» [ SKETCHUP tutos ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:44
» [ SKETCHUP tutos ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:43
» ColorMaker par Didier Bur[ SKETCHUP plugins ]
par JDD Dim 17 Nov 2024 - 20:56
» [ ARCHICAD ] Plus de format *atl dans Archicad
par Coulou Jeu 14 Nov 2024 - 8:26
» [ SKETCHUP tutos ] Créer des Bibliothèques et des livres aléatoires Facilement (2 Méthodes!)
par tenrev Mar 12 Nov 2024 - 11:31
» [ CHALLENGE 2024 ] les images finales du challenge
par tenrev Lun 11 Nov 2024 - 15:35
» [ SKETCHUP composants dynamiques ] Formule IF
par Samuel MATHIEU Jeu 7 Nov 2024 - 21:12
» [ Challenge 2024] cHallenge archjtexture exterieur ou paysagiste-vick-sketchup-enscape
par vick Jeu 7 Nov 2024 - 10:23
» [ SKETCHUP vray ]
par tenrev Mar 5 Nov 2024 - 21:19
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste- Gaspard Hauser - Sketchup - D5 render
par tenrev Mar 5 Nov 2024 - 10:22
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - JDD - SketchUp - Enscape
par tenrev Mar 5 Nov 2024 - 10:10
» [ ARCHICAD ] Murs paramétriques
par Coulou Lun 28 Oct 2024 - 10:28
» [ SKETCHUP généralité ] Aide pour SKP 2017
par PEGASE Sam 26 Oct 2024 - 18:36
» [ ARCHICAD ] Ajouter du lambris sur un mur
par Coulou Jeu 24 Oct 2024 - 10:43
» [ SKETCHUP généralité ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:13
» [ SKETCHUP tutos ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:11
» [ D5_RENDER] Petit exemple "hors sujet" ... D5
par Gaspard Hauser Mar 22 Oct 2024 - 19:59
» [ MATOS INFORM. ] [WINDOWS] Miniatures de prévisualisation pour les fichiers de modèle 3D au format .OBJ, .FBX, .STL, .3DS et +
par Gaspard Hauser Mar 22 Oct 2024 - 19:49
» [ SKETCHUP Layout ] Symboles Électriques sur Layout
par JDD Jeu 17 Oct 2024 - 9:44
» [ ARCHICAD ] gardes corps et profils complexe ?
par Christophe Fortineau Lun 14 Oct 2024 - 12:10
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - allansens - cinema 4D
par Allansens Sam 12 Oct 2024 - 13:53
» [ ARTLANTIS ] Ca donne envie !
par Gaspard Hauser Jeu 10 Oct 2024 - 10:00
» [ TWINMOTION ] Unreal Engine déménage sur Fab - DataSmith & Archicad
par Coulou Jeu 10 Oct 2024 - 9:03
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - AK40Cess - Archicad-Twinmotion
par Coulou Mar 8 Oct 2024 - 11:53
» [ TWINMOTION ] Unreal Engine déménage sur Fab - Assets de Megascan
par JDD Lun 7 Oct 2024 - 21:52
» [ CHALLENGE ARCHITECTURE EXTERIEURE OU PAYSAGISTE ] Démarrage du challenge 2024 - les régles
par tenrev Jeu 3 Oct 2024 - 14:58
par JDD Aujourd'hui à 16:06
» [ ARCHICAD ] Paramétrage des coupes sur Archicad
par AK40Cess Aujourd'hui à 14:12
» [ CHALLENGE 2024 ] résultats du challenge
par AK40Cess Hier à 13:27
» [ FORUM ] astuce pour insérer facilement un tableau sur le forum
par tenrev Hier à 9:12
» [ SKETCHUP plugins ] une barre d’outils perso
par tenrev Lun 18 Nov 2024 - 15:05
» [ SKETCHUP généralité ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:47
» [ SKETCHUP généralité ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:47
» [ SKETCHUP généralité ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:46
» [ SKETCHUP tutos ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:45
» [ SKETCHUP tutos ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:44
» [ SKETCHUP tutos ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:43
» ColorMaker par Didier Bur[ SKETCHUP plugins ]
par JDD Dim 17 Nov 2024 - 20:56
» [ ARCHICAD ] Plus de format *atl dans Archicad
par Coulou Jeu 14 Nov 2024 - 8:26
» [ SKETCHUP tutos ] Créer des Bibliothèques et des livres aléatoires Facilement (2 Méthodes!)
par tenrev Mar 12 Nov 2024 - 11:31
» [ CHALLENGE 2024 ] les images finales du challenge
par tenrev Lun 11 Nov 2024 - 15:35
» [ SKETCHUP composants dynamiques ] Formule IF
par Samuel MATHIEU Jeu 7 Nov 2024 - 21:12
» [ Challenge 2024] cHallenge archjtexture exterieur ou paysagiste-vick-sketchup-enscape
par vick Jeu 7 Nov 2024 - 10:23
» [ SKETCHUP vray ]
par tenrev Mar 5 Nov 2024 - 21:19
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste- Gaspard Hauser - Sketchup - D5 render
par tenrev Mar 5 Nov 2024 - 10:22
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - JDD - SketchUp - Enscape
par tenrev Mar 5 Nov 2024 - 10:10
» [ ARCHICAD ] Murs paramétriques
par Coulou Lun 28 Oct 2024 - 10:28
» [ SKETCHUP généralité ] Aide pour SKP 2017
par PEGASE Sam 26 Oct 2024 - 18:36
» [ ARCHICAD ] Ajouter du lambris sur un mur
par Coulou Jeu 24 Oct 2024 - 10:43
» [ SKETCHUP généralité ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:13
» [ SKETCHUP tutos ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:11
» [ D5_RENDER] Petit exemple "hors sujet" ... D5
par Gaspard Hauser Mar 22 Oct 2024 - 19:59
» [ MATOS INFORM. ] [WINDOWS] Miniatures de prévisualisation pour les fichiers de modèle 3D au format .OBJ, .FBX, .STL, .3DS et +
par Gaspard Hauser Mar 22 Oct 2024 - 19:49
» [ SKETCHUP Layout ] Symboles Électriques sur Layout
par JDD Jeu 17 Oct 2024 - 9:44
» [ ARCHICAD ] gardes corps et profils complexe ?
par Christophe Fortineau Lun 14 Oct 2024 - 12:10
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - allansens - cinema 4D
par Allansens Sam 12 Oct 2024 - 13:53
» [ ARTLANTIS ] Ca donne envie !
par Gaspard Hauser Jeu 10 Oct 2024 - 10:00
» [ TWINMOTION ] Unreal Engine déménage sur Fab - DataSmith & Archicad
par Coulou Jeu 10 Oct 2024 - 9:03
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - AK40Cess - Archicad-Twinmotion
par Coulou Mar 8 Oct 2024 - 11:53
» [ TWINMOTION ] Unreal Engine déménage sur Fab - Assets de Megascan
par JDD Lun 7 Oct 2024 - 21:52
» [ CHALLENGE ARCHITECTURE EXTERIEURE OU PAYSAGISTE ] Démarrage du challenge 2024 - les régles
par tenrev Jeu 3 Oct 2024 - 14:58
formulaire/diaporama
chaine sketchup.tv
Serveur Discord
Excell et liste de choix
Page 1 sur 2 • Partagez
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 : 48
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 : 48
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 : 48
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 : 48
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 : 48
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 : 48
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 : 48
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 : 48
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 : 48
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 : 48
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 : 48
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 : 48
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 :icon_mrgreen: :icon_mrgreen:
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é :icon_wink: :icon_wink:
-------------------------------------------------------------------------------------------------------------------------
_"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 : 48
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 .
- Contenu sponsorisé
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