What metadata can an m4a file hold and how do I get at it?
Metadata for .m4a apple lossless (ALAC) files
My new music library is all nicely ripped Apple Lossless files in .m4a
containers. These contain metadata, but it’s not id3v2 and the
universe of mp3 tools mostly don’t work. ffmpeg’s ffprobe sort of
works but doesn’t show all tags.
What does work for displaying m4a metadta is mp4v2, installable
via Homebrew. Docs here. It seems pretty stable but still gets
some updates.
(imac) = mp4file --list test.m4a
BRAND COMPAT SIZING FILE
----------------------------------------------------------------------
M4A M4A,isom,mp42 32-bit test.m4a
(imac) = mp4info test.m4a
mp4info version 1.9.1
test.m4a:
Track Type Info
1 audio alac, 260.806 secs, 562 kbps, 44100 Hz
Name: Pastourelle (E passo de dossai: Ah! viens pres de moi), folksong for voice & orchestra (Chants d'Auvergne, Series 2, No. 1)
Artist: Dawn Upshaw
Composer: Joseph Canteloube
Release Date: 1994
Album: Canteloube: Songs of the Auvergne
Track: 1 of 15
Disk: 1 of 1
Genre: Vocal Music
BPM: 0
Part of Compilation: no
Cover Art pieces: 1
Album Artist: Kent Nagano
Media Type: Movie
TV Episode: 0
TV Season: 0
Source Metadata for .m4a apple lossless (ALAC) files
@fixer1234 is right —
COUNTIF
counts the cells that are equal to a value,
not cells that contain a string.
For that, you need to use FIND
or SEARCH
.
(They are identical, except FIND
is case-sensitive
and SEARCH
is case-insensitive.
I’ll just assume that you want the case-insensitive one.)
Start by doing
=SEARCH(E2, '[OTHER WORKBOOK.xlsx]SHEET'!B1)
This will look for the value of E2
(in your example, “ animal ”)
in cell B1
of the other worksheet.
If that string value is present in that cell,
this will return the location of
the first occurrence of the search string in the cell’s text
(with the first character being 1).
If the string is not present, it will return #VALUE!
.
Next, do
=IF(ISERROR(SEARCH(E$2, '[OTHER WORKBOOK.xlsx]SHEET'!B1)), 0, 1)
This will evaluate to 1 if the string is present and 0 if it is not.
The next step is:
=SUM(IF(ISERROR(SEARCH(E2, '[OTHER WORKBOOK.xlsx]SHEET'!$B:$B)), 0, 1))
This sums the previous formula along column B
of the other worksheet,
giving you the count that you want.
Note that the above is an array formula.
This means that, to get it to work,
you must type Ctrl+Shift+Enter
after you type the formula.
Now you can put this into cell M2
and drag down.
You don’t really need to have column E
—
you can handle it within your SEARCH
formula:
=SUM(IF(ISERROR(SEARCH(" "&C2&" ", '[OTHER WORKBOOK.xlsx]SHEET'!$B:$B)), 0, 1))
I tested this in Excel 2013, but I’ve done things like this before,
and I expect that this solution will work in Excel 2007.
(And I tested with cells with more than 750 characters,
and with a workbook file name that contains a space.)
P.S. I don’t know why you got those #VALUE!
errors
in the “Function Arguments” dialog; it worked for me:
(I tested it even though my answer doesn’t use COUNTIF
.)
Do you have the other workbook open while you’re doing this?
Best Answer
RFC 4180 is commonly recognized as the standard for the CSV format, and does not mention any such feature.
W3C Model for Tabular Data and Metadata on the Web mentions it as a feature not within their scope:
So while I did not find any direct proof that this feature is Excel-specific, this apparently still is the case as there seems to be no standardization document covering that feature.