Type: Berichten; Gebruiker: snb
Wat dacht je van:
Private Sub UserForm_Initialize()
ComboBox1.List = [index(text(date(year(today()),1,4)-weekday(date(year(today()),1,4),2)+row(1:730),"dd-mm-yyyy"),)]
End Sub
Dat is superhandig: kijk ook maar eens hier:
http://www.snb-vba.eu/VBA_Fill_combobox_listbox.html
Waarom zou je de gebruiker geen lijst met geldige data aanbieden via een combobox of listbox ?
Begin met:
- het jezelf makkelijk te maken door een 'platte database' te maken in de vorm van een tabel: per medewerker een regel met alle gegevens
- geef alle kolommen een naam
- vermijd...
Waarschijnlijk is de hoeveelheid code in het userform het grootste probleem.
Dat je die niet getoond hebt waarschijnlijk het op een na grootste.
Sub M_snb()
if isdate(Geldigtot1.Value) then Cells(iRow, 4).Value = CDate(Geldigtot1.Value)
end sub
of
Private Sub CommandButton1_Click()
For j = 28 To 78
sheets("sheet1").Columns(j).Hidden = sheets("sheet1").Cells(3,j) = 0
Next
End Sub
Kon nog wel wat verbeterd worden:
Sub M_snb_002()
Cells(1).Resize(19).ClearContents
sn = Cells(1).Resize(19)
jj = 1
c00 = DateSerial(Cells(2, 5), 3 * (Cells(2, 6) - 1)...
Ik heb geen idee hoe je Wordbestand eruit ziet, maar als iedere alinea een bestandsnaam bevat kun je het bestand zo openen en opslaan.
Sub M_snb()
sn=split(activeDocument.content,vbcr)
...
Het is mij niet duidelijk over welke cel in rij 3 je het hebt.....
Private Sub worksheet_change(ByVal Target As Range)
Range("AB:BO").hidden=target=""
End Sub
Door van de doelcel een benoemd bereik te maken en de hyperlink naar het benoemde bereik te laten verwijzen.
of:
Sub M_snb()
Cells(1, 10).Resize(19).ClearContents
sn = Cells(1, 10).Resize(19)
jj = 1
c00 = DateSerial(Cells(2, 5), 3 * (Cells(2, 6) - 1) + 1, 1) -...
of ?
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("D13:D23")) Is Nothing Then
For Each cl In target
If cl.Value <> vbNullString Then...
het kon nog wat simpeler:
Public Function sscc_snb2(c00)
For j = 1 To Len(c00) - 1
y = y + (Mid(c00, j, 1) * IIf(j Mod 2 = 0, 1, 3))
Next
sscc_snb2 = Left(c00, Len(c00) -...
Je hebt onvoldoende gespecificeerd waar de gegevens staan.
Sub tst()
If ThisWorkbook.Path = "" Then ThisWorkbook.SaveAs Environ("temp") & "attach.xlsx"
sn =...
Met een UDF
Function sscc_snb(c00)
sn = Split(StrConv(c00, vbUnicode), Chr(0))
For j = 0 To UBound(sn) - 2
y = y + (sn(j) * IIf(j Mod 2 = 0, 3, 1))
Next
sn(j) =...
Lees svp reaktie nummer #2 nog eens goed door.....
had je de vertaling van
=OFFSET($B3;0;COUNTA($C3:$ZZ3))
al geprobeerd ?
=verschuiving($B3;0;aantalarg($C3:$ZZ3))
gebruik de formule in B3:
=OFFSET($B3;0;COUNTA($C3:$ZZ3))
PS. en zet een spatie in de gele cellen
Die vraag (en zeker het gewenste resultaat) is mij niet duidelijk.
Je hoeft niets te schrijven; kijk eens op het tabblad 'Data'.
Heb je al een databasequery gemaakt ?
Wat je zou kunnen doen:
Declareer in een macromodule een public array variabele.
Al je gegevens kun je daarin zetten en overal gebruiken: in de codemodule van het werkboek, de codemodule van een...
Valt weinig over te zeggen zonder inzicht in je bestand.....
y=sheets(16).usedrange.rows.count
of
y = sheets(16).Cells.SpecialCells(11).Row
of
...
Ik denk dat de eigenschap 'hyperlink base' van het bestand gewijzigd/verwijderd is.
Stel die opnieuw in : Tabblad File/properties.