Ich vermute mal, du willst so etwas machen:
Delphi-Quellcode:
procedure DoSomethingWithArray(recordX:TMyRecord);
begin
recordX.x:=1;
recordX.blabla:=irgendetwas;
...
end;
procedure Test;
begin
if begingung1 then
DoSomethingWithArray(array1.recordx)
else if bedingung2 then begin
DoSomethingWithArray(array2.recordx);
end;
Und außerdem: "Klappt nicht" ist keine Fehlerbeschreibung. Was passiert wann (oder auch nicht)?