Will Macrobid treat bacterial vaganios infection?

No. I wouldn't expect gardinerella to respond to standard antibiotic therapy. Gardnerella vaginalis is considered an anaerobic bacterium and as such is usually treated by Flagyl (metronidazole) or clindamycin.
No. Macrobid doesn't kill the bacteria that cause bv. The antibiotics that are usually used are metronidazole, tinidazole, or clindamycin. Sometimes it doesn't even need to be treated with antibiotics though during pregnancy it probably should be as BV is associated with preterm labor and with low birth weight babies.