• 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.

tabel regel met cel van laatste gebruiker die iets heeft gewijzigd

Status
Niet open voor verdere reacties.

Tegno

Gebruiker
Lid geworden
7 jul 2022
Berichten
58
We hebben een de gedeelde tabel in sharepoint staan
hierin kunnen alle gebruikers tegelijk wijzigingen aan brengen.

Is het mogelijk om in de tabel regel een cel van laatste gebruiker die iets in deze regel heeft gewijzigd toe te voegen?
en als 2de een 2de cel aan deze regel toe tevoegen met de datum en tijd van deze wijziging
 
Kan allemaal, maar je zal een voorbeeldbestand moeten plaatsen met betere uitleg en wat gewenste uitkomsten
 
Die info heb je toch al beschikbaar in de Versie historie van het bestand?
Version history.gifVersion history.gif
 
Met meerdere mensen in een bestand is deze versiegeschiedenis niet handig. Er staat ook wel eens: laatst bewerkt door persoon x en door persoon y. Ook de wijziging is niet zichtbaar.

In de webversie zie je die wel direct.
 
hierbij het bestand

in VB is deze regel juist (voor juiste werking document)

ActiveSheet.ListObjects("Tabel13").Range.AutoFilter Field:=18, Criteria1:= '(kolom foutje net gevonden, field 18)
 
Laatst bewerkt:
Zo iets:
Code:
    Application.EnableEvents = False
    Intersect(Target.EntireRow, ActiveSheet.ListObjects("Tabel13").ListColumn("laatst gewijzigd door").DataBodyRange).Value = Application.UserName
    Intersect(Target.EntireRow, ActiveSheet.ListObjects("Tabel13").ListColumn("datum laatste wijziging").DataBodyRange).Value = Date
    Application.EnableEvents = True
 
Laatst bewerkt:
Zo kom je volgens mij in een loop terecht, gezien je wijziging ook in de tabel plaatsvindt
 
Verwijder je huidige werkbladcode en voeg onderstaande toe. Sortering en filtering zit er ook in.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 With ListObjects(1)
   If Target.Count > 1 Then Exit Sub
   If Not Intersect(Target, .DataBodyRange) Is Nothing And Target.Value <> "" Then
      Application.EnableEvents = False
     .DataBodyRange(Target.Row - .HeaderRowRange.Row, 19).Resize(, 2) = Array(Environ("username"), Date)
      If Target.Column = 17 Then
        With .Range
          .Sort .Columns(17), , .Columns(8), , , .Columns(16), , 1
          .AutoFilter 17, Array("On Hold", "In Progress", "Te Doen", "TMI", "Offerte", "WAK/HOLD", "x", "y", "z"), 7
        End With
      End If
      Application.EnableEvents = True
   End If
 End With
End Sub
 
Betse JEC

het werkt niet goed
Hierbij nog maals het bestand met juiste sorteercode.
in dit bestand werkt kolom R als auto sortering

de code werkte niet helemaal goed bij de auto sortering data toevoegen deed hij wel.
de tijd zet hij er niet bij
 
Laatst bewerkt:
Kleine aanpassing in de code

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 With ListObjects(1)
   If Target.Count > 1 Then Exit Sub
   If Not Intersect(Target, .DataBodyRange) Is Nothing And Target.Value <> "" Then
      Application.EnableEvents = False
     .DataBodyRange(Target.Row - .HeaderRowRange.Row, 20).Resize(, 2) = Array(Environ("username"), Format(Now, "dd-mm-yy hh:mm"))
      If Target.Column = 18 Then
        With .Range
          .Sort .Columns(18), , .Columns(8), , , .Columns(16), , 1
          .AutoFilter 18, Array("On Hold", "In Progress", "Te Doen", "TMI", "Offerte", "WAK/HOLD", "x", "y", "z"), 7
        End With
      End If
      Application.EnableEvents = True
   End If
 End With
End Sub
 
Ik snap er niks van ik zet deze code in de sheet.
test hem en werkt prima
open de sheet opnieuw en hij doet niks meer (vb code is er nog wel)

Computer opnieuw opgestart en het werkt weer .

Je bent een topper
Dank voor je hulp.
 
Laatst bewerkt:
Vreemd, krijg je nergens een error als je het bestand opent?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan