inhoud van voorblad automatisch laten overnemen op gekopieerde tabbladen

Status
Niet open voor verdere reacties.

MoniekiM

Gebruiker
Lid geworden
21 feb 2016
Berichten
18
Hi

Ik ben bezig een formulier te maken waarin je gegevens kan invoeren op het voorblad. een tabblad wordt automatisch gemaakt dank zij Rudi:cool: met een topic uit 2012, maar nu wil ik dat de info die ingevuld wordt op het voorblad, in de juiste velden van het nieuwe tabblad komen.
Wie kan mij helpen?
Bekijk bijlage Namen.xls
 
Dit zou alles moeten doen.
De UDF (Function WSExists) mag je verwijderen.
Code:
Sub Kopieer()
Application.ScreenUpdating = False
With Sheets("Totaalblad")
    For Each cl In .Range("A5:A" & .Cells(Rows.Count, 1).End(xlUp).Row)
        If IsError(Evaluate("'" & cl & "'!A1")) Then
          Sheets.Add(, Sheets(Sheets.Count)).Name = CStr(cl)
          x = Array("Werkblad", CStr(cl))
          Sheets(x).FillAcrossSheets Sheets("werkblad").Cells
        End If
      Sheets(CStr(cl)).Range("g4:g7") = Application.Transpose(cl.Offset(, 1).Resize(, 4).Value)
    Next
End With
End Sub
 
wow, geweldig, hij doet t.
Graag wil ik de range van de cellen kunnen aanpassen.
Ik ga er even op puzzelen, ik ben dr bijna.

Dank je wel!!
 
Graag gedaan,

Maar...... daar heb je dan weer geen transpose voor nodig. ;)
Ook mag je van kolom A echte getallen maken ipv. getallen opgemaakt als tekst.

Met een lusje kan het zo.

Code:
Sub Kopieer()
Application.ScreenUpdating = False
With Sheets("Totaalblad")
    For Each cl In [COLOR=#ff0000].Columns(1).SpecialCells(2)[/COLOR]
        If IsError(Evaluate("'" & cl & "'!A1")) Then
          Sheets.Add(, Sheets(Sheets.Count)).Name = CStr(cl)
          x = Array("Werkblad", CStr(cl))
          Sheets(x).FillAcrossSheets Sheets("werkblad").Cells
        End If
[COLOR=#ff0000]        For j = 0 To 3[/COLOR]
[COLOR=#ff0000]          Sheets(CStr(cl)).Range("g4").Offset(j, j) = cl.Offset(, j + 1)[/COLOR]
[COLOR=#ff0000]       Next j[/COLOR]
    Next
End With
End Sub
 
hij doet het niet meer

Hoi,

Ik snap er niets meer van. Gisteren werkte alles goed, het kopiëren, de knoppen deden het, alles het verdwijnen van knop 52 lukte niet.
Ik voeg maar even het echte bestand toe.
Wil je nog even kijken, Harry?

Alvast bedankt,
Mo

ps

Waar ik ook al een tijd mee bezig ben is het automatisch vullen van de lijsten voor de comboboxen. Vaak moeten dezelfde gegevens ingevuld worden. nu heb ik de boxen via eigenschappen geprogrammeerd, moet ik de lijsten dan via vba met een array doen?
 
Laatst bewerkt:
Hallo Moniek,

Je hebt samengevoegde cellen; A4:G4.
Voor de nieuwe code maakt dat niet uit omdat ik nu op rij 10 start.
Maar haal die samengevoegde cellen uit het werkblad vroeg of laat krijg je er alleen maar problemen mee.


De code heb ik incl. 1 extra rij omdat alles nog leeg is en je vanaf cel A10 pas iets invult.
Code:
Sub kopieer()
Application.ScreenUpdating = False
With Sheets("OverzichtAanvragen")
    For Each cl In .Range("a10:a" & .Cells(Rows.Count, 1).End(xlUp).Row + 1)
      If cl <> "" Then
        If IsError(Evaluate("'" & cl & "'!A1")) Then
          Sheets.Add(, Sheets(Sheets.Count)).Name = CStr(cl)
          Sheets(Array("logboek1", CStr(cl))).FillAcrossSheets Sheets("logboek1").Cells
        End If
      Sheets(CStr(cl)).Range("d1").Resize(6) = Application.Transpose(cl.Offset(, 1).Resize(, 6).Value)
     End If
  Next cl
End With
End Sub

De Comboxen kan je beter met .List vullen dan met Rowsource zoals in het youtube filmpje.
Je kan veel gemakkelijker de gegevens wegschrijven met '.listindex'.
Bv.
Code:
with sheets("logboek1")
 combobox1.list = .range("a10:a" & .cells(rows.count,1).end(xlup).row).value
end with

Of als de gegevens apart staan en vanaf A1 beginnen en verder naar onderen.
Code:
combobox1.list = sheets("logboek1").cells(1).currentregion.value

En nog talloze mogelijkheden, maar dan heb ik meer informatie nodig wat de bedoelingen zijn.

Test het voor zo eerst maar eens.
 
Hi Harry,
Bedankt weer.:cool:
Er zitten keuzeboxen in het logboek, die worden niet gekopieerd met jouw formule.
Ik heb het nu gefikst door de eerste formule te gebruiken en verticaal zoeken.

De samengevoegde cellen zal ik ook herstellen.
Ik ga nu even kijken of ik de comboboxen aan de praat krijg.

Ik wil dus dat wat er bij logboek entry ingevuld wordt, in de lijsten komt te staan. Dan krijg ik automatisch een lijst met contacten en verslagen. Vaak is er contact met dezelfde personen, dus dan hoeven ze het alleen maar aan te klikken, ook de verslagen zullen veelal hetzelfde zijn. IPV dat alles voorgeprogrammeerd wordt, kan de gebruiker dat nu zelf doen. Dit is mijn plan.

groetjes,
Moniek
 
Hoi,

Waar moeten de gegevens naar toe geschreven worden?
Kun je dit misschien verwoorden naar welk blad en welke cellen?
 
hi Harry,

Naar het blad Lijsten:
de inhoud van de mBox naar kolom B en de vBox naar kolom D

groetjes,
Mo
 
Daar staan toch de gegevens om de comboboxen te vullen?
 
klopt, Harry
Ik wil de lijsten aanvullen met de invoer die door de gebruiker ingetypt wordt. Dus als ze contact hebben gehad met "de Groot", dat de volgende keer "de Groot" in de combobox staat.

Groetjes,
Mo
 
Je denkt misschien wat een gezeur maar even voor de goede orde.
Waar typ je iets in zodat het in de comboboxen moet komen?
Als de combobxen eenmaal gevuld zijn en je hebt een keuze daaruit gemaakt waar moet het naar toe geschreven worden als je op de knop 'toevoegen' drukt.
 
Het is geen gezeur, hoor.

wat in de comboboxen wordt ingevoerd, komt in een kopie van logboek1.

.Cells(iRow + 2, 2).Value = Me.oBox.Value
.Cells(iRow + 3, 2).Value = Me.mBox.Value
.Cells(iRow + 4, 2).Value = Me.pBox.Value
.Cells(iRow + 2, 4).Value = Me.vBox.Value

maar het zou fijn zijn als het dus OOK op Lijsten wordt ingevoerd in kolommen A : D
A en D zijn niet zo belangrijk omdat daar de keuze al zo goed als vast staat.

Later moet dan ook weer de lijst geordend en de dubbele eruit gehaald worden.

groetjes,
Moniek
 
Laatst bewerkt:
Moniek,

Kijk maar of je het er zo een beetje mee eens bent.
Als je op de knop 'Logboek Entry' klikt en wat gegevens invoert wordt het weggeschreven naar tabblad 'Logboek1'.
Bij geen gebruik van de comboboxen 'mbox en vbox' maar daar wel iets ingevuld wordt er gekeken of die al in de lijst staat, zo niet......wordt deze aangemaakt.
Er wordt nog geen nieuw blad aangemaakt; dat gedeelte heb ik even uitgeschakeld omdat ik niet weet of die code daar wel thuishoort.
 

Bijlagen

Harry, je bent geweldig!!
te gek, hier ben ik echt heel blij mee!!:d
Heel erg bedankt!

Groetjes,
Mo
 
Mooi, mochten er nog vragen komen... verneem ik het wel.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan