The script is not finding what it suppoded to with FindWithTag

This script is not finding the thing with FindWithTag. I have checked the tags properly but its not working.

What should I do now?

using System.Collections;
using System.Collections.Generic;
using UnityEditor.Rendering;
using UnityEngine;
using Cinemachine;
using TMPro;

public class PlayerCarInteraction : MonoBehaviour 
{
    [SerializeField]GameObject speedUI;
    public VehicleControl vehicleControl;
    public Transform Car;
    public Transform Player;
    Rigidbody rb;
    public CinemachineFreeLook Cam;
    public GameObject VirtualCamera;
    public float SitRange;
    
    // Start is called before the first frame update
    void Start()
    {
        vehicleControl.activeControl = false;
        speedUI.SetActive(false);
        rb = GetComponent<Rigidbody>();
        
        Debug.Log(GameObject.FindWithTag("Player"));
        
        Debug.Log(Player.gameObject.name + "Is player");
        GameObject playerObject = GameObject.FindWithTag("Player");
        Player = playerObject.transform;
        VirtualCamera = GameObject.FindWithTag("PlayerFollow");
        GameObject TCam = GameObject.FindWithTag("TPC");
        Cam = TCam.GetComponent<CinemachineFreeLook>();

        Debug.Log(Cam.gameObject.name+"is the cam");
        Cam.gameObject.SetActive(false);
        VirtualCamera.SetActive(true);
    }

    // Update is called once per frame
    void Update()
    {
        UpdateSpeed();
        CheckIsPlayer();
        CheckIsExit();
        AssignVariables();
    }

    private void AssignVariables()
    {
        GameObject playerObject = GameObject.FindWithTag("Player");
        Player = playerObject.transform;
        VirtualCamera = GameObject.FindWithTag("PlayerFollow");
        GameObject TCam = GameObject.FindWithTag("TPC");
        Cam = TCam.GetComponent<CinemachineFreeLook>();
    }

    private void CheckIsExit()
    {
        if (Input.GetKeyDown(KeyCode.G))
        {
            vehicleControl.activeControl = false; // After Click G button Car Controller Script is disable

            // Here We Unparent the Player with Car
            Player.transform.SetParent(null);
            Player.gameObject.SetActive(true);

            // Here If Player Is Not Driving So PlayerCamera turn On and Car Camera turn off

            VirtualCamera.SetActive(true);
            if (Cam != null)
            {
                Cam.gameObject.SetActive(false);

                Cam.LookAt = Player;
                Cam.Follow = Player;
            }

            speedUI.SetActive(false);
        }
    }

    private void CheckIsPlayer()
    {
        if (Input.GetKeyDown(KeyCode.F) && Vector3.Distance(gameObject.transform.position, Player.position) < SitRange)
        {

            vehicleControl.activeControl = true; // After Click F button Car Controller Script is enabled
            AICarController aI = GetComponent<AICarController>();
            aI.enabled = false;

            // Here we parent Car with player
            Player.transform.SetParent(Car);
            Player.gameObject.SetActive(false);

            VirtualCamera.SetActive(false);
            if (Cam != null)
            {
                Cam.gameObject.SetActive(true);

                Cam.LookAt = Car;
                Cam.Follow = Car;
            }
            speedUI.SetActive(true);
        }
    }

    private void UpdateSpeed()
    {
        TextMeshProUGUI speedText = speedUI.GetComponentInChildren<TextMeshProUGUI>();
        if (speedText != null)
        {
            float speed;
            speed = rb.velocity.magnitude * 2.237f * 1.6f;
            speedText.text = (int)speed + "";
        }
    }

}

Are you sure the log with FindWithTag isn’t shown?
If you’re working with Tags extensively, I suggest you to use some library to show the tags you’ve created automatically (in a dropdown way), so there’s no typo going on.
Here I found one: WSWhitehouse/Unity-Tag-Selector: Turn a string field into a dropdown of all available tags (github.com)