I was having the same issue until I worked out that I was trying to make my project directory and the virtual environment one and the same - which isn't correct.
I have a \Code\Python
directory where I store all my Python projects.
My Python 3 installation is on my Path.
If I want to create a new Python project (Project1) with its own virtual environment, then I do this:
python -m venv Code\Python\Project1\venv
Then, simply opening the folder (Project1) in Visual Studio Code ensures that the correct virtual environment is used.