# Export and Importing of Tags

**URL:** <https://community.mp3tag.de/t/export-and-importing-of-tags/59710>\
**Category:** Support\
**Created:** [January 15, 2023, 9:19pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710 "2023-01-15T21:19:31Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![cldcp00](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/838e76/32.png) [@cldcp00](https://community.mp3tag.de/u/cldcp00)\
**Post date:** [January 15, 2023, 9:19pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/1 "2023-01-15T21:19:31Z")

</div>

Hi There

I have exported some tags in the following format

Title;Artist;Path;Filename;

And have updated the tags.

But I cannot seem to get imported back Using Textfile to Tag

I have tried %Title% %Artist% %path% %\_filename%

But ir is not working can anybody offer some advice please

---

<div class="post-metadata">

**Author:** ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)\
**Post date:** [January 15, 2023, 9:23pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/2 "2023-01-15T21:23:39Z")

</div>

the separators in the import mask have to match the field separators in the data file.  
AFAICT you have a semicolon in the data file but use a space in the import mask.

---

<div class="post-metadata">

**Author:** ![cldcp00](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/838e76/32.png) [@cldcp00](https://community.mp3tag.de/u/cldcp00)\
**Post date:** [January 15, 2023, 9:29pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/3 "2023-01-15T21:29:17Z")

</div>

This is the .mte file

$filename(csv,utf-16)Title;Artist;Path;Filename;  
$loop(%\_filename\_ext%)%title%;%artist%;%\_folderpath%;%\_filename\_ext%;  
$loopend()build on %\_date% with %\_app% - the universal Tag editor - [Mp3tag - the universal Tag Editor (ID3v2, MP4, OGG, FLAC, ...)](http://www.mp3tag.de/en/)

---

<div class="post-metadata">

**Author:** ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)\
**Post date:** [January 15, 2023, 9:32pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/4 "2023-01-15T21:32:01Z")

</div>

As I said: the data file uses the semicolon as separator but

> [@cldcp00](#):
>
> I have tried %Title% %Artist% %path% %\_filename%

uses the space.  
Also, I suspect that you get an error message that the lines could not be parsed.  
Please export only the pure data but no column headers or other footers like the line that starts with "build ..."

---

<div class="post-metadata">

**Author:** ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)\
**Post date:** [January 15, 2023, 9:34pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/5 "2023-01-15T21:34:38Z")

</div>

> [@cldcp00](#):
>
> I have exported some tags...  
> and have updated the tags.

I'm just curious:  
Why do you export this 4 tags, manipulate them externally and import it back to Mp3tag?  
I'm pretty sure that you could do that inside Mp3tag much faster.

---

<div class="post-metadata">

**Author:** ![cldcp00](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/838e76/32.png) [@cldcp00](https://community.mp3tag.de/u/cldcp00)\
**Post date:** [January 15, 2023, 9:37pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/6 "2023-01-15T21:37:13Z")

</div>

> [@ohrenkino](#):
>
> AFAICT

I just trying to get it to work before I export the the 1000's I have to update

---

<div class="post-metadata">

**Author:** ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)\
**Post date:** [January 15, 2023, 9:41pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/7 "2023-01-15T21:41:16Z")

</div>

If you analyze what you can do, I would seriously also recommend that you analyze the use-case thoroughly. I am pretty sure that there are very few functions outside MP3tag that are better suited to update tags.  
Or in short: the benefit of treating tags outside MP3tag should outweigh the effort to get the export/import working.

---

<div class="post-metadata">

**Author:** ![MotleyG](https://community.mp3tag.de/user_avatar/community.mp3tag.de/motleyg/32/440_2.png) [@MotleyG](https://community.mp3tag.de/u/MotleyG)\
**Post date:** [January 15, 2023, 9:44pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/8 "2023-01-15T21:44:14Z")

</div>

Maybe if you share what you are trying to accomplish by manipulating the data outside of mp3tag, a more efficient method can be suggested while working directly from mp3tag.

---

<div class="post-metadata">

**Author:** ![cldcp00](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/838e76/32.png) [@cldcp00](https://community.mp3tag.de/u/cldcp00)\
**Post date:** [January 16, 2023, 12:45am UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/9 "2023-01-16T00:45:35Z")

</div>

thanks guys for your advice.  
i am currently trying out functionality, once i have determined what the majority of the updates are going i will have a better idea of how i can tackle the problem.

one of the reasons that i gravitated to the export function is that i have many years of experience of Excel and VBA but saying that it might not turn out to be the best solution to the tasks i have to update many 1000's of tags.

So far my main issue is that I have a lot of mp3 files with filename in all different formats which have no tags.

Any advice of the best approach to fix these files as I said I have in excess of 50,000 files

Thanks for any advice

---

<div class="post-metadata">

**Author:** ![MotleyG](https://community.mp3tag.de/user_avatar/community.mp3tag.de/motleyg/32/440_2.png) [@MotleyG](https://community.mp3tag.de/u/MotleyG)\
**Post date:** [January 16, 2023, 4:32am UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/10 "2023-01-16T04:32:32Z")

</div>

> [@cldcp00](#):
>
> So far my main issue is that I have a lot of mp3 files with filename in all different formats which have no tags.

If there are any distinguishing characters that separate the details that may be in these file names, that makes it easier to put the data into those tag fields. Even if there are a few different formats, you can at least break those into groups and work from there.

Once you have the tags lined up, you can rebuild any folder and file names into a consistent structure.

Some concrete examples of a couple of these filenames would help to see what can be done.

---

<div class="post-metadata">

**Author:** ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)\
**Post date:** [January 16, 2023, 6:53am UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/11 "2023-01-16T06:53:51Z")

</div>

> [@cldcp00](#):
>
> So far my main issue is that I have a lot of mp3 files with filename in all different formats which have no tags.

So far yyou have created a number of threads that circle around the problem of getting infomation from filenames.  
Unfortunately, you hardly ever answer whether that works for you.  
And in this thread you do not describe in more detail how your

> [@cldcp00](#):
>
> many years of experience of Excel and VBA

should help you with the problem of filling the metadata.  
Based on your recent posts, I assume that you might be able to work with the scripting functions (if not, let us know) - so a look at

> **[Scripting Functions – Mp3tag Documentation](https://docs.mp3tag.de/scripting/)**
>
> Documentation on Mp3tag's scripting functions. Mp3tag is the universal Tag Editor.

should show you a number of functions that you might recognize from your other programs and which could be used to move data around and/or split it up.  
Or which special task do you want to achieve that you see outside the scope of MP3tag?

---

<div class="post-metadata">

**Author:** ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)\
**Post date:** [January 16, 2023, 7:28am UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/12 "2023-01-16T07:28:56Z")

</div>

> [@cldcp00](#):
>
> I have a lot of mp3 files with filename in all different formats which have no tags.

How would you solve this problem with Excel and/or VBA?  
If you tell us your approach for some real example files, we can help you to solve it in Mp3tag.

---

<div class="post-metadata">

**Author:** ![cldcp00](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/838e76/32.png) [@cldcp00](https://community.mp3tag.de/u/cldcp00)\
**Post date:** [January 16, 2023, 12:33pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/13 "2023-01-16T12:33:12Z")

</div>

Here you go a subset of the kind if issues I have

My approach is to get all the format tag uniform FILENAME = "Artist - Title" TITLE = Title and ARTIST =Artist

The rest of tags are no that important to me

 ![image](https://community.mp3tag.de/uploads/default/original/2X/8/87a2c56a24e1d0a0911b5db9e0fc1a41eecab4db.png)

Thanks for all your help

---

<div class="post-metadata">

**Author:** ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)\
**Post date:** [January 16, 2023, 12:46pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/14 "2023-01-16T12:46:58Z")

</div>

I would filter for the files with different patterns and nothingness in the various tag fields.  
Also, I would not throw away data that is otherwise hard to restore. The forum is full of support requests how to fill the year or the cover while the ALBUM is missing etc. So, IMHO, keep as much information as you can.

So: filter for files with no ARTIST:  
%artist% MISSING  
Then check the filenames and see where the artist may be hidden.  
E.G. the file with Leroy Junior has more than 1 space character as separator between ARTIST and TITLE, perhaps there are more of these. So expand the filter to  
%artist% MISSING AND %\_filename% HAS `" "`  
and then use Convert\>Filename-Tag on all the displayed files where the ARTIST is the first part:  
`%artist%..%title%`  
(where the 2 . represent a space each - but the forum formatter won't display this properly)  
you would have to iterate through your collection like that - and I doubt that could be done any faster with an export and import between Excel and Mp3tag.  
Other patterns would be  
%artist% MISSING AND %\_filename% HAS `-`  
and Convert\>Filename - Tag with  
%artist% - %title%

The Ken Booth anthology could be imported with:  
%artist% - %album% - %track% %albumartist% - %title%  
or  
%artist% - %album% - %track% %dummy% - %title%  
and so on.

---

<div class="post-metadata">

**Author:** ![cldcp00](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/838e76/32.png) [@cldcp00](https://community.mp3tag.de/u/cldcp00)\
**Post date:** [January 16, 2023, 1:04pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/15 "2023-01-16T13:04:24Z")

</div>

Thanks ohrenkino for getting back to me so swiftly. I relise that filtering si going to be a key to sorting out the labels  
So if I may can I ask a couple of questions

How would I filter for anywhere that has year either (1975) or [1975]

Or something like this tags that information in parentheses  
King Tubby Festival Dub ( Jackie Edwards Song).mp3

Could you provide an Example of how to use RegEx

Thanks again for you help

---

<div class="post-metadata">

**Author:** ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)\
**Post date:** [January 16, 2023, 1:25pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/16 "2023-01-16T13:25:55Z")

</div>

> [@cldcp00](#):
>
> How would I filter for anywhere that has year either (1975) or [1975]

Type exact that content in your filter F3  
`(1975)`  
All entries where `(1975)` exists - no matter if in a tag or filename - will be listed.  
_(The examples above from @ohrenkino already show you, how you can filter for specific tags or the filename.)_

Process this files.

Then use a new filter like  
`[1975]`

Process this files.

If you want to list all files with 1975 - regardless of brackets - just enter this filter:  
`1975`  
maybe with a leading space or a trailing space, according to your existing data.

Please start with this easy examples.  
If you really can't find a filter for one of your examples, let us know.

> [@cldcp00](#):
>
> Could you provide an Example of how to use RegEx

There is no need for a regular expression so far.

Last but not least:  
Don't forget to read the [documentation about Filter](https://docs.mp3tag.de/filter/).

---

<div class="post-metadata">

**Author:** ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)\
**Post date:** [January 16, 2023, 1:42pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/17 "2023-01-16T13:42:29Z")

</div>

> [@cldcp00](#):
>
> anywhere that has year either (1975) or [1975]

I think you used the filter syntax almost correctly - it would be:  
%\_filename% HAS (1975) OR %\_filename% HAS [1975]  
or even - for any kind of 4-digit-number:  
%\_filename% MATCHES `^.\d\d\d\d.\s*`

To be honest: what is puzzling me: I gave you a number exapmples how to handle the files in the screenshot of yours. But instead of telling us whether you could cope with the files and whether the conversion worked, you ask about numbers in brackets - when none of the files in the screenshot shows a leading number in the filename.  
This approach looks rather chaotic to me.

---

<div class="post-metadata">

**Author:** ![cldcp00](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/838e76/32.png) [@cldcp00](https://community.mp3tag.de/u/cldcp00)\
**Post date:** [January 16, 2023, 1:52pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/18 "2023-01-16T13:52:50Z")

</div>

You are right, I am trying to fix everything in one go which is too ambitious I will start to take it line by line

Thanks guys

---

<div class="post-metadata">

**Author:** ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)\
**Post date:** [January 16, 2023, 2:03pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/19 "2023-01-16T14:03:51Z")

</div>

> [@cldcp00](#):
>
> will start to take it line by line

I think the apporach would be to do it pattern by pattern - so look out for the separators in your filenames that help to define the pattern.  
E.g my example for the "Anthology" would treat 3 files in 1 go.  
The filter with the dash would help to get at least 6 files to have better data - and that from this screenshot alone.  
So line by line is definitely not necessary.  
How would you have done it

> [@cldcp00](#):
>
> in one go

with VBA or Excel?

---

<div class="post-metadata">

**Author:** ![system](https://community.mp3tag.de/uploads/default/original/2X/c/ce7035d426cb755a7916793326d23b465222a407.png) [@system](https://community.mp3tag.de/u/system)\
**Post date:** [February 9, 2026, 12:30pm UTC](https://community.mp3tag.de/t/export-and-importing-of-tags/59710/20 "2026-02-09T12:30:01Z")

</div>


