Não existe imunidade aos medicamentos e as possíveis razões pelas quais um medicamento não funciona depois de o tomar são: 1. o organismo é resistente ao medicamento; 2. o medicamento não pode tratar a doença através do seu mecanismo farmacológico; 3. os medicamentos especiais são tomados em conjunto para reduzir a eficácia do tratamento. A resistência aos medicamentos divide-se em resistência natural e resistência adquirida. A resistência natural deve-se ao facto de o cromossoma bacteriano ser geneticamente determinado pela sua estrutura química e a sua composição ser diferente, não sendo ele próprio sensível aos medicamentos antibacterianos. A resistência adquirida deve-se ao facto de as bactérias, após um contacto prolongado com medicamentos antibacterianos, alterarem a sua própria via ou estrutura metabólica, de modo a não serem mortas pelos medicamentos antibacterianos originais. Além disso, certos medicamentos tomados em conjunto reduzem a eficácia do tratamento, como a nifedipina e o medicamento anti-tuberculose rifampicina, que, quando tomados em conjunto, diminuem a concentração efectiva da nifedipina, reduzindo assim o efeito do seu tratamento anti-hipertensivo. Por conseguinte, recomenda-se que consulte um médico antes de tomar o medicamento por si próprio e que o utilize de forma razoável.