Retrieving my comment, you can try using below with the following considerations:
Sub stancial()
Dim olItems As Outlook.Items
Dim olFolder As Outlook.Folder
Dim olNS As Outlook.NameSpace
Dim olEmail As Outlook.MailItem
Dim i As Long
Dim efilter As String, startdt As String, endindt As String, _
myUTC As Integer, sentby As String
myUTC = 8 '/* this is your UTC, change to suit (in my case 8) */
startdt = Format(DateAdd("h", -myUTC, _
CDate("1/18/2018 12:00 PM")), "\'m/d/yyyy hh:mm AM/PM\'")
endindt = Format(DateAdd("h", -myUTC, _
CDate("1/18/2018 4:00 PM")), "\'m/d/yyyy hh:mm AM/PM\'")
sentby = "'john.doe@email.com'" '/* can be sendername, "doe, john" */
Set olNS = Application.GetNamespace("MAPI")
Set olFolder = olNS.GetDefaultFolder(olFolderInbox)
'/* filter in one go, where datereceived is
'expressed in UTC (Universal Coordinated Time) */
efilter = "@SQL= (urn:schemas:httpmail:sendername = " & sentby & _
" And (urn:schemas:httpmail:datereceived >= " & startdt & _
" And urn:schemas:httpmail:datereceived <= " & endindt & "))"
Set olItems = olFolder.Items.Restrict(efilter)
With olItems
For i = .Count To 1 Step -1 '/* starting from most recent */
If TypeOf .Item(i) Is MailItem Then
Set olEmail = .Item(i)
Debug.Print olEmail.Subject, olEmail.ReceivedTime
End If
Next
End With
End Sub