Audio codecs work with frames. E.g. an 48kHz AC3 frame is 32ms long. Within the Matroska container the timing for every one of these frames is stored. Timecode files are basically a way of storing those timings in a separate text file. In 99.9% of cases you do not need to create and keep timecode files for audio tracks as every audio frame will simply directly follow its predecessor (i.e. the frame rate is constant). You would only need them if the frame rate were not constant, i.e. if 2 (or more) audio frames overlap or have a gap between them. (Sometimes the timing of the first frame is not 0 or not identical to the timing of the first video frame - we simply call it "delay".)
You never need separate timecode files for subtitles because subtitle formats always include timings (they never have a constant framerate, e.g. like 1 line every 1 second but they are tied to the timings of the dialog).
Now the question is: do your files have gaps/overlaps? If you rip them directly from DVD/Blu-Ray: no. If they are from some kind of webcam/phone cam/screen recording: maybe.