My objective is to use one of my spare wifi cards and run a virtual machine which will then control this wifi card. I tried using virtual box for this purpose and kali linux but the only options available is to connect to a network using the host-device. Is there any way for me to control to the wifi card directly to the virtual machine?
many virtual machine admin panels offer a way to grant a virtual machine access to physical hardware.
In kvm e.g. you can add this hardware via virtmanager to the virtual machine. So the access to this host-system's hardware is permitted to the virtual machine and you should be able to use it.