Consider two basis $\mathcal{B},\mathcal{C}$ of the euclidean space $\mathbb{R}^3$:
$$\begin{cases} \mathcal{B} = \{\vec{b_1},\vec{b_2},\vec{b_3}\} \\ \mathcal{C} = \{\vec{c_1},\vec{c_2},\vec{c_3}\} \end{cases}$$
We can write each basis vector of $\mathcal{B}$ as the linear combination of the basis vectors of $\mathcal{C}$:
$$\begin{cases} \vec{b_1} = a_{11}\vec{c_1} + a_{12}\vec{c_2} + a_{13}\vec{c_3} \\ \vec{b_2} = a_{21}\vec{c_1} + a_{22}\vec{c_2} + a_{23}\vec{c_3} \\ \vec{b_3} = a_{31}\vec{c_1} + a_{32}\vec{c_2} + a_{33}\vec{c_3} \end{cases}$$
Thus, we have $\mathcal{B}$ expressed in terms of $\mathcal{C}$ and we can package this into an $n \times n$ matrix called a change-of-coordinates matrix from $\mathcal{B}$ to $\mathcal{C}$ whose columns represent the basis vectors of $\mathcal{B}$ expressed in terms of the basis vectors of $\mathcal{C}$:
$$P_{\mathcal{B} \rightarrow \mathcal{C}} = \begin{pmatrix} a_{11} & a_{21} & a_{31} \\ a_{12} & a_{22} & a_{32} \\ a_{13} & a_{23} & a_{33} \end{pmatrix}$$
And we obtain:
$$[\vec{x}]_{\mathcal{C}} = P_{\mathcal{B} \rightarrow \mathcal{C}} \cdot [\vec{x}]_{\mathcal{B}}$$
Now some books write the same stuff but the other way round, they call the matrix $P_{\mathcal{B} \rightarrow \mathcal{C}}$ a change-of-basis matrix from $\mathcal{C}$ to $\mathcal{B}$ and often write it backward as such:
$$[\vec{v}]_{\mathcal{C}} = P_{\mathcal{B} \rightarrow \mathcal{C}} \cdot [\vec{x}]_{\mathcal{C}}$$
We have thus changed the vector $[\vec{x}]_{\mathcal{C}}$ to a new vector $[\vec{v}]_{\mathcal{C}}$ that corresponds graphically to a vector in basis $\mathcal{B}$ with the coordinates of $[\vec{x}]_{\mathcal{C}}$.
It really just comes down to the fact that the change-of-basis is the canonical basis represented by the identity matrix multiplied by the change-of-coordinates matrix:
$$\begin{pmatrix} a_{11} & a_{21} & a_{31} \\ a_{12} & a_{22} & a_{32} \\ a_{13} & a_{23} & a_{33} \end{pmatrix}_{\mathcal{C}} = P_{\mathcal{B} \rightarrow \mathcal{C}} \cdot \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{pmatrix}_{\mathcal{C}}$$
For any vector $[\vec{x}]_{\mathcal{C}}$ in basis $\mathcal{C}$, the frame of reference for each coordinates is the canonical basis represented by the identity matrix and we can change those coordinates assuming they are in basis $\mathcal{B}$ to obtain a new set of coordinates for the canonical basis in basis $\mathcal{C}$ but as they would appear graphically in $\mathcal{B}$.
Any thoughts on this? Not very easy to explain it with words.
Handy trick for remembering what your change of basis matrix does: apply it to the members of the basis expressed in terms of itself. In terms of matrices, you will have the matrix times the standard basis vectors, and thus get back the columns. So, if the columns are the coordinates of the first basis expressed in terms of the other, then we do indeed have the transition matrix from the one to the other.
Special case: if the columns are independent, we always have the transition matrix from the basis consisting of the columns, to the standard basis.