Конкретно сказать, где ошибка не могу, надо чтоб вы показали код. Но вот как будет работать (unit2 - модуль, где записаны константы, uni1 - главная форма):
Код:
unit Unit2;
interface
const
Caption_ = 'Hello!';
procedure ReplaceVar(var a, b: Integer);
implementation
procedure ReplaceVar(var a, b: Integer);
begin
a := a+ b;
b := a - b;
a := a - b;
end;
end.
////////////
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses unit2;
...
procedure TForm1.Button1Click(Sender: TObject);
var
a, b: Integer;
begin
a := 5;
b := 3;
ShowMessage(Caption_);
ReplaceVar(a, b);
// сейчас а=3, b=5
end;
Это маленький пример, чтоб вы поняли.
ЗЫ процедура ReplaceVar - это процедура "обмена" переменных, без использования 3ей переменной (чисто для примера,
написал то, что первое пришло в голову

).
ЗЫЫ то бишь скорее всего, вы в том модуле, где объявляете все процедуры и функции вы их не правильно объявляете, надо вот так:
Код:
procedure ReplaceVar(var a, b: Integer); // объявил процедуру
implementation
procedure ReplaceVar(var a, b: Integer); // теперь описываем ее.
begin
a := a+ b;
b := a - b;
a := a - b;
end;