Still doesn't run with the rws in there
change this line, i missed the last 2
Range("a" & rw).Value = Format(Left(Range("a" & rw), InStr(Range("a" & rw), "T") - 1), "yyyy-mm-dd")
here is a tested version (runs without error on the sample workbook, but results not checked
lastrow = Cells(Rows.Count, 1).End(xlUp).Row
For rw = 2 To lastrow Step 6
pos = InStr(Range("a" & rw), "T")
If Not pos = 0 Then Range("a" & rw).Value = Format(Left(Range("a" & rw), pos - 1), "yyyy-mm-dd")
Range("a" & rw).NumberFormat = "yyyy-mm-dd"
mystr = Range("a" & rw + 2)
mystr = Replace(mystr, " and ", " & ")
pos = InStr(mystr, "http")
Do While pos > 0
nd = InStr(pos, mystr, " ")
If nd = 0 Then nd = Len(mystr)
webadd = Mid(mystr, pos, nd - pos)
If Right(webadd, 1) = "." Then webadd = Left(webadd, Len(webadd) - 1)
mystr = Replace(mystr, webadd, vbNullString)
pos = InStr(mystr, "http")
Loop
If Len(mystr) > 400 Then mystr = Left(mystr, 397) & "..."
Range("a" & rw + 2).Value = mystr
Next