Pour le problème 1
Si vous voulez toujours ajouter les infos sur la dernière ligne du tableau, en partant du haut du tableau, le nombre de ligne à décaler vers le bas est variable. Par contre, en partant du bas du tableau, le nombre de ligne à décaler vers le haut pour insérer les nouvelles données est toujours le même.
Range("B259").Select '- Aller en bas du tableau.
Selection.End(xlUp).Select '- se place sur la première cellule pleine
ActiveCell.Offset(-1, 0).Select ' - remonte à l'emplacement de la ligne à insérer
Selection.EntireRow.Activate '- insère une ligne
Selection.Insert Shift:=xlDown
Range("B3").Select '- se place sur la cellule à remplir.
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
puis la suite de votre macro.
J'espère que cela pourra vous aider.