No, when you create your a, you're simply telling matlab that the 14:51 is measured in the UTC timezone. At no point do you tell matlab that it is measured in Amsterdam timezone but to be displayed in UTC.
The correct way to do what you want is to create your datetime in the Amsterdam timezone, then tell matlab to change the timezone to UTC:
>> myDatesLocal = {'12/04/18 14:51:36' '12/04/18 14:52:36' '12/04/18 14:53:36'}; >> b = datetime(myDatesLocal,'InputFormat','dd/MM/yy HH:mm:ss','TimeZone','Europe/Amsterdam') b = 3×1 datetime array 12-Apr-2018 14:51:36 12-Apr-2018 14:52:36 12-Apr-2018 14:53:36
>> b.TimeZone = 'UTC' b = 3×1 datetime array 12-Apr-2018 12:51:36 12-Apr-2018 12:52:36 12-Apr-2018 12:53:36