• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Records op verschillende bladen wegzetten

Status
Niet open voor verdere reacties.

CorVerm

Redacteur
Lid geworden
11 mrt 2005
Berichten
5.272
Beste mensen,

Ik ben bezig om een nieuw adressenbestand te maken. Het is de bedoeling dat ,als er aangegeven wordt dat het een privè adres betreft, het opgelagen wordt op het tabblad Privè en anders op het tabblad Zakelijk.
Uiteraard moeten de gegevens op het blad Adressen behouden blijven. Omdat er al wat VBA code in het bestand zit (kan waarschijnlijk beter) stuur ik het bestand mee.

Groeten,
 
Laatst bewerkt:
Hallo Cor,

Bovenaan zet je dit: (Boven alle andere code)

Option Explicit
Option Compare Text

en dit wordt de code voor de ok button:

Private Sub cmdok_Click()

Dim intDummy As Integer
Dim mySheet As Worksheet
If Me.TextBox9.Value = "z" Then
Set mySheet = Sheets("Zakelijk")
ElseIf Me.TextBox9.Value = "p" Then
Set mySheet = Sheets("Privè")
End If

'Controle gegevens
If TextBox1 = "" Then
intDummy = MsgBox("Er zijn onvoldoende gegevens ingevuld.", vbOKOnly + vbExclamation, "Controle gegevens")
End If
If TextBox3 = "" Then
intDummy = MsgBox("Er zijn onvoldoende gegevens ingevuld.", vbOKOnly + vbExclamation, "Controle gegevens")
Exit Sub
End If

Sheets("Adressen").Activate

Range("B" & CStr(Rows.Count)).End(xlUp).Select
ActiveCell.Offset(1, 0).Value = TextBox1.Text
ActiveCell.Offset(1, 1).Value = TextBox2.Text
ActiveCell.Offset(1, 2).Value = TextBox3.Text
ActiveCell.Offset(1, 3).Value = TextBox4.Text
ActiveCell.Offset(1, 4).Value = TextBox5.Text
ActiveCell.Offset(1, 5).Value = TextBox6.Text
ActiveCell.Offset(1, 6).Value = TextBox7.Text
ActiveCell.Offset(1, 7).Value = TextBox8.Text

TextBox1 = ""
TextBox1.SetFocus
If mySheet Is Nothing Then Exit Sub
With mySheet.Range("B65536").End(xlUp)
.Offset(1, 0).Value = TextBox1.Value
.Offset(1, 1).Value = TextBox2.Value
.Offset(1, 2).Value = TextBox3.Value
.Offset(1, 3).Value = TextBox4.Value
.Offset(1, 4).Value = TextBox5.Value
.Offset(1, 5).Value = TextBox6.Value
.Offset(1, 6).Value = TextBox7.Value
.Offset(1, 7).Value = TextBox8.Value
End With
Range("B2").Select
End Sub

Ik heb speciaal uw code nog niet aangepast... enkel mijn code er onder geplakt.

Maar je zou wel beter je code nog 's nakijken. Bij het sluiten van het bestand, krijg je doodleuk een dubbel adres. En bovendien is de methode die je gebruikt om de laatste regel te selecteren .... hmmm.... nodeloos ingewikkeld.

Luc
 
Cor,

Ik heb er een Macro bijgemaakt.
Misschien kun je er wat mee.
 

Bijlagen

Luc,
Zeer bedankt. Het is helemaal goed op een heel klein detail na. Zowel op het blad Privè als op het blad Zakelijk wordt de kolom Aanhef niet ingevuld. (zou dus in kolom B moeten komen). In kolom J wordt resp.wel de p danwel de z weergegeven. Wat moet ik veranderen om dit (zeer kleine) foutje recht te zetten?
In ieder geval ben ik een zeer tevreden mens en kan met een gerust hart gaan slapen.
Snap wat je bedoelt wat betreft de code!

Groeten,
 
Luc en Luc,

Jullie beiden bedankt voor de oplossingen. Beide oplossingen vind ik geweldig. Overigens, toen ik de vorige reactie schreef was de oplossing van Luc B nog niet binnen.
Nogmaals dank.

Groeten,
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan