def _to_addr(worksheet, row, col, row_fixed=False, col_fixed=False):
    """converts a (0,0) based coordinate to an excel address"""
    addr = ""
    A = ord('A')
    col += 1
    while col > 0:
        addr = chr(A + ((col - 1) % 26)) + addr
        col = (col - 1) // 26

    prefix = ("'%s'!" % worksheet) if worksheet else ""
    col_modifier = "$" if col_fixed else ""
    row_modifier = "$" if row_fixed else ""
    return prefix + "%s%s%s%d" % (col_modifier, addr, row_modifier, row+1)