Here's what you do:
Have one window open that has the regular files and LoL data (Game-Hero Pak-Characters-Whoever you want). Open a new folder somewhere easy to find, like on Desktop or somewhere not that cluttered. Name it whatever you want.
Now in the new blank folder, you are gonna make a copy of the original skin and the skin you want to swap it out with. Copy both into that new folder. Now, make another folder inside THAT new folder. Name it whatever. In the newest folder, copy the original skin into it. Now, rename that skin to the other one. If the new one is "Heimer_Attack_TX_AI.DDS", make it look exactly like that in the folder. Now, take that skin and plug it into the regular League of Legends folder. It should ask if you want to replace it with the new skin, say yes. Now, take the other skin, put it in the new folder, and do the same thing rename it and plug it back in. It will ask to replace, say yes.
This will change the skin to where you will see it in game, but others should not see it. To get others to see it, it's kinda complicated and varies from character to character. Custom skins AFAIK there is no way for other people to see it unless they have the same coding and data as you. For the instore skins to show for other people, basically you manipulate the data to say "I have this skin slot unlocked, other people can see the skin that is supposed to be here".
Actually, now that I think about it, there might be a way for other people to see the skins as well. It would require them all to modify it like you normally would. Like you have it where the game reads your file and shows that as the skin, and have them have the same file as the skin that they should see. IDK if that works, I will have to look into it. Kinda interesting.
But yes, making it so that other in store skins can be seen by other people is complicated and I have not done it much.