Hola: debes indicarle el numero de indice del ListBox.
Código Delphi
[-] for a := 0 to listbox2.count -1 do
begin
dmdatos.ATMATERIAS.Append; dmdatos.ATMATERIASMATERIAID.AsString:=edit1.Text;
dmdatos.ATMATERIASDESCRIPCION.AsString:= listbox2.Items.Strings[a]; dmdatos.ATMATERIAS.Post;
end;
Nada mas que eso. Del bucle se encarga el for.
Saludos