The following UDF¹ can be used as a worksheet function or a helper function in a VBA project.
Option Explicit
Function IsISODateTime(str As String)
Dim n As Long, nums() As Variant
Static rgx As Object, cmat As Object
'with rgx as static, it only has to be created once; beneficial with repeated calls to the UDF
If rgx Is Nothing Then
Set rgx = CreateObject("VBScript.RegExp")
End If
IsISODateTime = vbNullString
With rgx
.Global = False
.MultiLine = False
.Pattern = "[0-9]{4}\-[0-9]{2}\-[0-9]{2}[A-Z]{1}[0-9]{2}\:[0-9]{2}\:[0-9]{2}"
IsISODateTime = .Test(str)
End With
End Function
The UDF returns a true boolean True/False.
The pattern I've provided is very brick-by-brick literal; it could be shortened using the methods detailed in How to use Regular Expressions (Regex) in Microsoft Excel both in-cell and loops.
¹ A User Defined Function (aka UDF) is placed into a standard module code sheet. Tap Alt+F11 and when the VBE opens, immediately use the pull-down menus to Insert ► Module (Alt+I,M). Paste the function code into the new module code sheet titled something like Book1 - Module1 (Code). Tap Alt+Q to return to your worksheet(s).