VAB
Résolu
gregg1712
Messages postés
59
Statut
Membre
-
gregg1712 Messages postés 59 Statut Membre -
gregg1712 Messages postés 59 Statut Membre -
Bonjour,
Voici le code :
_________________________
Dim Salaire As Integer
Dim Proprio As Byte
Dim Financement As String
Dim Charge As String
Dim Charge2 As String
Dim Loyer As Integer
Dim A As String
Range("B2").Select
Salaire = InputBox("Entrez votre salaire mensuel (en €):")
ActiveCell.Offset(0, 0).Value = Salaire
'--------------------------------------------------------------------------------------------
Do
Proprio = InputBox("Entrez :" & vbCrLf & "1 si vous êtes Propriétaire" & vbCrLf & "2 si vous êtes Locataire")
If Not (Proprio = 1 Or Proprio = 2) Then MsgBox "Erreur de saisie. Recommencez"
Loop Until Proprio = 1 Or Proprio = 2
If Proprio = 1 Then
Financement = MsgBox("Avez-vous un financement?", vbYesNo, "")
End If
If Proprio = 2 Then
Charge = MsgBox("Les charges sont comprise dans le loyer?", vbYesNo, "")
End If
If Charge = vbNo Then
Charge2 = InputBox("Quel est le montant des charges (en €)?")
ActiveCell.Offset(3, 0).Value = Charge2
End If
If Proprio = 1 Or 2 Then
A = Proprio
End If
If Proprio = A And Financement = vbYes Then
Loyer = InputBox("Indiquez votre loyer mensuel (en €)")
ActiveCell.Offset(2, 0).Value = Loyer
Else
ActiveCell.Offset(2, 0).Value = "0"
End If
__________________________
Il y a un truc qui ne fonctionne pas:
a la fin: Je voudrais demander le Loyer:
_Au propriétaire en finanacement
_PAS Au propriétaire sans financement
_Au Locaraire avec ou sans charge
(Docn tout le monde sauf les proprio sans financement)
Le but est de connaitre le salaire, leur loyer (pas de loyer pour les Propio sans financement)... (et de savoir si Locataire compte les charges dans leur loyer ou pas)
.... Aidez moi ...plz
Voici le code :
_________________________
Dim Salaire As Integer
Dim Proprio As Byte
Dim Financement As String
Dim Charge As String
Dim Charge2 As String
Dim Loyer As Integer
Dim A As String
Range("B2").Select
Salaire = InputBox("Entrez votre salaire mensuel (en €):")
ActiveCell.Offset(0, 0).Value = Salaire
'--------------------------------------------------------------------------------------------
Do
Proprio = InputBox("Entrez :" & vbCrLf & "1 si vous êtes Propriétaire" & vbCrLf & "2 si vous êtes Locataire")
If Not (Proprio = 1 Or Proprio = 2) Then MsgBox "Erreur de saisie. Recommencez"
Loop Until Proprio = 1 Or Proprio = 2
If Proprio = 1 Then
Financement = MsgBox("Avez-vous un financement?", vbYesNo, "")
End If
If Proprio = 2 Then
Charge = MsgBox("Les charges sont comprise dans le loyer?", vbYesNo, "")
End If
If Charge = vbNo Then
Charge2 = InputBox("Quel est le montant des charges (en €)?")
ActiveCell.Offset(3, 0).Value = Charge2
End If
If Proprio = 1 Or 2 Then
A = Proprio
End If
If Proprio = A And Financement = vbYes Then
Loyer = InputBox("Indiquez votre loyer mensuel (en €)")
ActiveCell.Offset(2, 0).Value = Loyer
Else
ActiveCell.Offset(2, 0).Value = "0"
End If
__________________________
Il y a un truc qui ne fonctionne pas:
a la fin: Je voudrais demander le Loyer:
_Au propriétaire en finanacement
_PAS Au propriétaire sans financement
_Au Locaraire avec ou sans charge
(Docn tout le monde sauf les proprio sans financement)
Le but est de connaitre le salaire, leur loyer (pas de loyer pour les Propio sans financement)... (et de savoir si Locataire compte les charges dans leur loyer ou pas)
.... Aidez moi ...plz
3 réponses
-
Bonjour,
1°) ActiveCell.Offset(0, 0).Value = Salaire ?
ActiveCell.Value = Salaire -> Suffit
2°) il faux mettre la variable à chaque fois.
If Proprio = 1 Or Proprio = 2 Then
3°) Pourquoi faire un test qui ne sert à rien puisque Proprio sera toujours soit à 1 soit à 2
4°) Tu essaye d'entrer une variable Byte dans une variable string.
Donc, oublie le test de Proprio et écrire.
A = Cstr(Proprio)
Mais tout ça n'est pas nécessaire.
Tu supprime tes lignes en gras et remplace par...If Financement = vbYes Then Loyer = InputBox("Indiquez votre loyer mensuel (en €)") Else Loyer = 0 End If ActiveCell.Offset(2, 0).Value = Loyer
A+
-
-
Bonjour,
Cela ne fonctionne pas car , il ne demande pas le Loyer:
________________________
Sub Depense()
Dim Salaire As Integer
Dim Proprio As Byte
Dim Financement As String
Dim Charge As String
Dim Charge2 As String
Dim Loyer As Integer
Dim A As String
Range("B2").Select
Salaire = InputBox("Entrez votre salaire mensuel (en €):")
ActiveCell.Value = Salaire
Do
Proprio = InputBox("Entrez :" & vbCrLf & "1 si vous êtes Propriétaire" & vbCrLf & "2 si vous êtes Locataire")
If Not (Proprio = 1 Or Proprio = 2) Then MsgBox "Erreur de saisie. Recommencez"
Loop Until Proprio = 1 Or Proprio = 2
If Proprio = 1 Then
Financement = MsgBox("Avez-vous un financement?", vbYesNo, "")
End If
If Proprio = 2 Then
Charge = MsgBox("Les charges sont comprise dans le loyer?", vbYesNo, "")
End If
If Charge = vbNo Then
Charge2 = InputBox("Quel est le montant des charges (en €)?")
End If
ActiveCell.Offset(3, 0).Value = Charge2
If Financement = vbYes Then
Loyer = InputBox("Indiquez votre loyer mensuel (en €)")
Else
Loyer = 0
End If
ActiveCell.Offset(2, 0).Value = Loyer
End Sub
____________________________________
Et je pense que ca demanderais qu'au proprio avec financement pas comme je voudrais:
_Au propriétaire en finanacement
_PAS Au propriétaire sans financement
_Au Locaraire avec ou sans charge
Je voyais un truc du grene: Si propriétaire avec financement OU locataire alors demandé le loyer sinon rien.
(Docn tout le monde sauf les proprio sans financement)
A part le loyer, tout marche -
-
-
Déclare Financement en integer ou Byte et la condition fonctionnera.
ou bien tu met..
If Financement = "6" Or Proprio = 2 Then
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques. -
Essaye avec..
Dim Proprio As Byte Dim Financement As Integer Dim Charge As Single Dim Charge2 As Single Dim Loyer As Single Do Proprio = InputBox("Entrez :" & vbCrLf & "1 si vous êtes Propriétaire" & vbCrLf & "2 si vous êtes Locataire") If Not (Proprio = 1 Or Proprio = 2) Then MsgBox "Erreur de saisie. Recommencez" Loop Until Proprio = 1 Or Proprio = 2 If Proprio = 1 Then Financement = MsgBox("Avez-vous un financement?", vbYesNo, "") Else Charge = MsgBox("Les charges sont comprise dans le loyer?", vbYesNo, "") End If If Charge = vbNo Then Charge2 = InputBox("Quel est le montant des charges (en €)?") End If ActiveCell.Offset(3, 0).Value = Charge2 If Financement = vbYes Or Proprio = 2 Then Loyer = InputBox("Indiquez votre loyer mensuel (en €)") Else Loyer = 0 End If ActiveCell.Offset(2, 0).Value = Loyer
Les variables "Single" permettent les décimales comme par exemple 202.45 euros
A+
Edit :
Mais ça ne serait pas plus "Pro" avec un userForm ?
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.