Bonjour,
Avec ce code/
Private Sub CommandButton1_Click()
[A65000].End(xlUp).Offset(1, 0).Select
ActiveCell.Offset(0, 0) = TextBox1
ActiveCell.Offset(0, 0) = Format(TextBox1.Value, "mm/dd/yyyy")
ActiveCell.Offset(0, 1).Value = CboPays
ActiveCell.Offset(0, 2).Value = CboDem
ActiveCell.Offset(0, 3).Value = CboModes
ActiveCell.Offset(0, 4).Value = TextBox2
ActiveCell.Offset(0, 4) = Format(TextBox2.Value, "0")
ActiveCell.Offset(0, 5).Value = CboHor
TextBox1 = ""
TextBox2 = ""
CboDem = ""
CboModes = ""
CboHor = ""
CboPays = ""
End Sub
Je recopie les champs d'un formulaire vers une base de données.
Mais comment faire pour emp^écher cette recopie lorsqu'une ou plusieurs
textbox ou combox sont vides?
j'ai essayé:
if TextBox1="" Then
MsgBox"Vous devez saisir une date"
Exit Sub
End If
Mais cela recopie le formulaire incomplet autant de fois sur chaque nouvelle
ligne à chaque validation
Merci pascal
---
Antivirus avast! : message Sortant sain.
Base de donnees virale (VPS) : 000733-2, 14/04/2007
Analyse le : 15/04/2007 12:38:39
avast! - copyright (c) 1988-2007 ALWIL Software.
http://www.avast.com
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
tissot.emmanuel
Bonjour,
Tu crées une fonction pour controler la saisie et tu l'appelles avant d'effectuer la copie, ce qui pourrait donner par exemple:
Private Sub CommandButton1_Click() If ChampNonRenseigne= vbNullString Then 'Recopie des donnees With [A65000].End(xlUp).Offset(1, 0) .Value = Format(TextBox1.Value, "mm/dd/yyyy") .Offset(0, 1).Value = CboPays .Offset(0, 2).Value = cboDem .Offset(0, 3).Value = CboModes .Offset(0, 4) = Format(TextBox2.Value, "0") .Offset(0, 5).Value = CboHor End With 'Reset du formulaire TextBox1 = "" TextBox2 = "" cboDem = "" CboModes = "" CboHor = "" CboPays = "" Else MsgBox "Veuillez remplir le champ " & ChampNomRenseigne End If End Sub
Private Function ChampNonRenseigne() As String If TextBox1.Value = vbNullString Then ChampNonRenseigne= "TextBox1" Exit Function Else If CboPays.Value = vbNullString Then ChampNonRenseigne= "CboPays" Exit Function Else If cboDem.Value = vbNullString Then ChampNonRenseigne= "CboPays" Exit Function Else If CboModes.Value = vbNullString Then ChampNonRenseigne= "CboModes" Exit Function Else If CboHor.Value = vbNullString Then ChampNonRenseigne= "CboHor" Exit Function End If End If End If End If End If End Function
Cordialement, Manu/
"Pascal" a écrit dans le message de news: 462200a7$0$5105$
Bonjour, Avec ce code/ Private Sub CommandButton1_Click() [A65000].End(xlUp).Offset(1, 0).Select ActiveCell.Offset(0, 0) = TextBox1 ActiveCell.Offset(0, 0) = Format(TextBox1.Value, "mm/dd/yyyy") ActiveCell.Offset(0, 1).Value = CboPays ActiveCell.Offset(0, 2).Value = CboDem ActiveCell.Offset(0, 3).Value = CboModes ActiveCell.Offset(0, 4).Value = TextBox2 ActiveCell.Offset(0, 4) = Format(TextBox2.Value, "0") ActiveCell.Offset(0, 5).Value = CboHor TextBox1 = "" TextBox2 = "" CboDem = "" CboModes = "" CboHor = "" CboPays = "" End Sub Je recopie les champs d'un formulaire vers une base de données. Mais comment faire pour emp^écher cette recopie lorsqu'une ou plusieurs textbox ou combox sont vides? j'ai essayé: if TextBox1="" Then MsgBox"Vous devez saisir une date" Exit Sub End If Mais cela recopie le formulaire incomplet autant de fois sur chaque nouvelle ligne à chaque validation
Merci pascal
--- Antivirus avast! : message Sortant sain. Base de donnees virale (VPS) : 000733-2, 14/04/2007 Analyse le : 15/04/2007 12:38:39 avast! - copyright (c) 1988-2007 ALWIL Software. http://www.avast.com
Bonjour,
Tu crées une fonction pour controler la saisie et tu l'appelles avant
d'effectuer la copie, ce qui pourrait donner par exemple:
Private Sub CommandButton1_Click()
If ChampNonRenseigne= vbNullString Then
'Recopie des donnees
With [A65000].End(xlUp).Offset(1, 0)
.Value = Format(TextBox1.Value, "mm/dd/yyyy")
.Offset(0, 1).Value = CboPays
.Offset(0, 2).Value = cboDem
.Offset(0, 3).Value = CboModes
.Offset(0, 4) = Format(TextBox2.Value, "0")
.Offset(0, 5).Value = CboHor
End With
'Reset du formulaire
TextBox1 = ""
TextBox2 = ""
cboDem = ""
CboModes = ""
CboHor = ""
CboPays = ""
Else
MsgBox "Veuillez remplir le champ " & ChampNomRenseigne
End If
End Sub
Private Function ChampNonRenseigne() As String
If TextBox1.Value = vbNullString Then
ChampNonRenseigne= "TextBox1"
Exit Function
Else
If CboPays.Value = vbNullString Then
ChampNonRenseigne= "CboPays"
Exit Function
Else
If cboDem.Value = vbNullString Then
ChampNonRenseigne= "CboPays"
Exit Function
Else
If CboModes.Value = vbNullString Then
ChampNonRenseigne= "CboModes"
Exit Function
Else
If CboHor.Value = vbNullString Then
ChampNonRenseigne= "CboHor"
Exit Function
End If
End If
End If
End If
End If
End Function
Cordialement,
Manu/
"Pascal" <lapless@wanadoo.fr> a écrit dans le message de news:
462200a7$0$5105$ba4acef3@news.orange.fr...
Bonjour,
Avec ce code/
Private Sub CommandButton1_Click()
[A65000].End(xlUp).Offset(1, 0).Select
ActiveCell.Offset(0, 0) = TextBox1
ActiveCell.Offset(0, 0) = Format(TextBox1.Value, "mm/dd/yyyy")
ActiveCell.Offset(0, 1).Value = CboPays
ActiveCell.Offset(0, 2).Value = CboDem
ActiveCell.Offset(0, 3).Value = CboModes
ActiveCell.Offset(0, 4).Value = TextBox2
ActiveCell.Offset(0, 4) = Format(TextBox2.Value, "0")
ActiveCell.Offset(0, 5).Value = CboHor
TextBox1 = ""
TextBox2 = ""
CboDem = ""
CboModes = ""
CboHor = ""
CboPays = ""
End Sub
Je recopie les champs d'un formulaire vers une base de données.
Mais comment faire pour emp^écher cette recopie lorsqu'une ou plusieurs
textbox ou combox sont vides?
j'ai essayé:
if TextBox1="" Then
MsgBox"Vous devez saisir une date"
Exit Sub
End If
Mais cela recopie le formulaire incomplet autant de fois sur chaque
nouvelle ligne à chaque validation
Merci pascal
---
Antivirus avast! : message Sortant sain.
Base de donnees virale (VPS) : 000733-2, 14/04/2007
Analyse le : 15/04/2007 12:38:39
avast! - copyright (c) 1988-2007 ALWIL Software.
http://www.avast.com
Tu crées une fonction pour controler la saisie et tu l'appelles avant d'effectuer la copie, ce qui pourrait donner par exemple:
Private Sub CommandButton1_Click() If ChampNonRenseigne= vbNullString Then 'Recopie des donnees With [A65000].End(xlUp).Offset(1, 0) .Value = Format(TextBox1.Value, "mm/dd/yyyy") .Offset(0, 1).Value = CboPays .Offset(0, 2).Value = cboDem .Offset(0, 3).Value = CboModes .Offset(0, 4) = Format(TextBox2.Value, "0") .Offset(0, 5).Value = CboHor End With 'Reset du formulaire TextBox1 = "" TextBox2 = "" cboDem = "" CboModes = "" CboHor = "" CboPays = "" Else MsgBox "Veuillez remplir le champ " & ChampNomRenseigne End If End Sub
Private Function ChampNonRenseigne() As String If TextBox1.Value = vbNullString Then ChampNonRenseigne= "TextBox1" Exit Function Else If CboPays.Value = vbNullString Then ChampNonRenseigne= "CboPays" Exit Function Else If cboDem.Value = vbNullString Then ChampNonRenseigne= "CboPays" Exit Function Else If CboModes.Value = vbNullString Then ChampNonRenseigne= "CboModes" Exit Function Else If CboHor.Value = vbNullString Then ChampNonRenseigne= "CboHor" Exit Function End If End If End If End If End If End Function
Cordialement, Manu/
"Pascal" a écrit dans le message de news: 462200a7$0$5105$
Bonjour, Avec ce code/ Private Sub CommandButton1_Click() [A65000].End(xlUp).Offset(1, 0).Select ActiveCell.Offset(0, 0) = TextBox1 ActiveCell.Offset(0, 0) = Format(TextBox1.Value, "mm/dd/yyyy") ActiveCell.Offset(0, 1).Value = CboPays ActiveCell.Offset(0, 2).Value = CboDem ActiveCell.Offset(0, 3).Value = CboModes ActiveCell.Offset(0, 4).Value = TextBox2 ActiveCell.Offset(0, 4) = Format(TextBox2.Value, "0") ActiveCell.Offset(0, 5).Value = CboHor TextBox1 = "" TextBox2 = "" CboDem = "" CboModes = "" CboHor = "" CboPays = "" End Sub Je recopie les champs d'un formulaire vers une base de données. Mais comment faire pour emp^écher cette recopie lorsqu'une ou plusieurs textbox ou combox sont vides? j'ai essayé: if TextBox1="" Then MsgBox"Vous devez saisir une date" Exit Sub End If Mais cela recopie le formulaire incomplet autant de fois sur chaque nouvelle ligne à chaque validation
Merci pascal
--- Antivirus avast! : message Sortant sain. Base de donnees virale (VPS) : 000733-2, 14/04/2007 Analyse le : 15/04/2007 12:38:39 avast! - copyright (c) 1988-2007 ALWIL Software. http://www.avast.com