Question with the lcd.print variable in I2C.

Hello, how to shift a character left when it exceeds the lcd.setCursor?

Want to give us some more information? In general you can not shift anything on an LCD once it is sent, you can only move the position of the LCD cursor, or write position as it is known, and write again.

I need to re write the percentage of my accu on my LCD. but if accu as 100% charge the % go to the first line and i need to the 100% move 1 character as left.

You can't move the character. You have to place your cursor one position further left before printing.

Or better: always place your cursor there, and add a leading space if your value is less than three digits. And two spaces when it's less than two digits. Then at least you clear the old digits, or you may see a level of 199%.