Category: Tools

  • Convert alphabetical Google Sheet column names to numbers

    Lately, I’ve been working with large Google spreadsheets that have many columns. When you write QUERY statements to pull data from one sheet into another, you have to use Col1, Col2, Col3 column names instead of A, B, and C. It’s hard enough to remember the letter O is the 15th letter of the alphabet. There is no chance that I am going to memorize that column BH is the 60th. I made this calculator to solve this conversion:

    [alphabet_number_calculator]

    One of my favorite tricks when a team member needs some data is to create a new Sheet, query data from the primary sheet, and share that subset of the data while protecting the A1 cell so the formula doesn’t get mangled. This method lets our friend get only the columns she needs and live updates in the form of new rows just like the huge primary sheet. It works by passing an IMPORTRANGE call into the first parameter of QUERY.

  • gif2frames.exe: Extract frames from an animated GIF

    I built a Windows 32 bit command line executable, gif2frames.exe. (Go to download)

    This tool will take an animated GIF image file and save a separate static image for each frame in PNG, BMP or JPG format.

    The reason GIFs are useful is because the files can be optimized to reduce the size on disk. If a frame is visible for 1 or 10 seconds, a single copy of the frame may be stored inside the image file and a frame delay can help the player coordinate the animation.

    For this reason, when you say “extract frames from a gif file” you could mean two things; each unique frame could be extracted just once, or each frame could be extracted for each unit of time it is visible. If you want the latter, you must then decide on a rate of frames per second.

    Also interesting: the timing is funny business. Minimum frame rates (per second) can be determined by the software displaying the GIF file (more info at the bottom of this page). This makes the number of frames in a film strip style export of frames hard to calculate. I workaround this problem by finding the frame with the shortest display time and divide all the other times by this number. This means animations where all frames are shown for three seconds will only produce one image for each frame. If this is not what you are looking for, try ImageMagick (convert.exe).

    Usage

    Here are a few cmd.exe examples showing basic calls.

    Animated GIF to PNG images

    C:\>gif2frames.exe at.gif

    Animated GIF to BMP images

    gif2frames at.gif -bmp

    Animated GIF to JPG images

    gif2frames at.gif -jpg

    Only unique frames

    gif2frames at.gif -png -unique

    Downloads