سلام
مي خواستم بدونم كه ميشه اطلاعات بانك اطلاعاتي
Excel
كپي كرد داخل بانك اطلاعاتي پارادوكس البته بدون كد نويسي منظورم اينكه آيا يه برنامه مبدل وجود داره يا نه
ثانيا از
ADO
ميشه براي ارتباط با
Excel
استفاده كرد يا نه
:blush: :blush:
Printable View
سلام
مي خواستم بدونم كه ميشه اطلاعات بانك اطلاعاتي
Excel
كپي كرد داخل بانك اطلاعاتي پارادوكس البته بدون كد نويسي منظورم اينكه آيا يه برنامه مبدل وجود داره يا نه
ثانيا از
ADO
ميشه براي ارتباط با
Excel
استفاده كرد يا نه
:blush: :blush:
سلام
چرا اكسل ؟نقل قول:
ثانيا از
ADO
ميشه براي ارتباط با
Excel
خوب مي توني انتقالشون بدي به اكسس!
اگر مي خواهي در كل با اكسل كار كني! فكر نمي كنم كه عملي بشه(نظر من)
موفق باشي
سلام
اولا من شخصا نمي خوام با اكسل كار كنم اونجايي كه اين برنامه رو خواسته با اكسل كار ميكنه
ثانيا يه اشتباه توي صورت سوال هست و اون اينكه اطلاعات داخل اكسل توي بانك اطلاعاتي نيست بلكه به صورت دستي داخل
سلول هاي اون وارد شده (من خودم تازه مي خوام كه با بانك اطلاعاتي آي دي او كار كنم پس اگه اشتباه مي كنم راهنمايم
كنيد و همينطور در مورد اكسل و اكسس اطلاعات خيلي كمي دارم) مي خوام اطلاعاتي رو كه داخل سلول هاي اكسل هست
رو بگيرم مي خواستم بدونم كه عملي هست يا نه و اينكه آيا كامپونتي در اين مورد وجود داره يا نه؟؟؟؟؟
سلام
اول از همه - فرقي نداره كه دستي وارد سلول ها شده باشه يا با برنامه! اصل همون اطلاعات هست!
در ضمن به نظر من اكسس كار كني خيلي بهتر و ساده تر هست! حالا اگر مي خواهي براي كسي پروژه بسازي اون فرق داره!
اما مي توني بهش بگي كه با اكسس كار كنه! چون اكسس خيلي بهتره!
حالا ممكنه كمپننتي چيزي گير بياد! اما سخت!(ممكنه بچه ها داشته باشن)
ما براي استفاده از ديتابيس اكسس بهتره!! در ضمن اگر با اكسل كار مي كنه(حتي دستي)
مي تونه با راحتي اونها رو به اكسس منتقل كنه!
حالا اگر مي خواهي با اكسس كار كني! بگو كه خودم و بقيه بيشتر توضيح بديم
اگر هم مي خواهي باز با اكسل كار كني(مجبور هستي بخاطر پروژه اي چيزي) بازم بگو
كه اگر دوستي كسي كمپننتي داره بهت معرفي كنه!
اما حرف آخر من اكسس هست!(چون خودم كار كردم حسابي خوب بوده! )
موفق باشي
سلام
خيلي راحت مي تونيد اطلاعات اكسس را بخونيد.
در اولين فرصت يك نمونه ميفرستم.
از نظر امنيت چطوره؟ اكسل رو ميگم!نقل قول:
سلام
خيلي راحت مي تونيد اطلاعات اكسس را بخونيد.
در اولين فرصت يك نمونه ميفرستم.
سلامنقل قول:
نوشته شده توسط MAR_Programmer
اينو ببينيد :
(اينطوري اطلاعات فايل اكسل توي يك StringGrid كپي مي شود. ميتونيد بجاي كپي كردن مستقيما توي ديتابيس بريزيد)
روش استفاده :کد:
uses
ComObj;
function Xls_To_StringGrid(AGrid: TStringGrid; AXLSFile: string): Boolean;
const
xlCellTypeLastCell = $0000000B;
var
XLApp, Sheet: OLEVariant;
RangeMatrix: Variant;
x, y, k, r: Integer;
begin
Result := False;
// Create Excel-OLE Object
XLApp := CreateOleObject('Excel.Application');
try
// Hide Excel
XLApp.Visible := False;
// Open the Workbook
XLApp.Workbooks.Open(AXLSFile);
// Sheet := XLApp.Workbooks[1].WorkSheets[1];
Sheet := XLApp.Workbooks[ExtractFileName(AXLSFile)].WorkSheets[1];
// In order to know the dimension of the WorkSheet, i.e the number of rows
// and the number of columns, we activate the last non-empty cell of it
Sheet.Cells.SpecialCells(xlCellTypeLastCell, EmptyParam).Activate;
// Get the value of the last row
x := XLApp.ActiveCell.Row;
// Get the value of the last column
y := XLApp.ActiveCell.Column;
// Set Stringgrid's row &col dimensions.
AGrid.RowCount := x;
AGrid.ColCount := y;
// Assign the Variant associated with the WorkSheet to the Delphi Variant
RangeMatrix := XLApp.Range['A1', XLApp.Cells.Item[X, Y]].Value;
// Define the loop for filling in the TStringGrid
k := 1;
repeat
for r := 1 to y do
AGrid.Cells[(r - 1), (k - 1)] := RangeMatrix[K, R];
Inc(k, 1);
AGrid.RowCount := k + 1;
until k > x;
// Unassign the Delphi Variant Matrix
RangeMatrix := Unassigned;
finally
// Quit Excel
if not VarIsEmpty(XLApp) then
begin
// XLApp.DisplayAlerts := False;
XLApp.Quit;
XLAPP := Unassigned;
Sheet := Unassigned;
Result := True;
end;
end;
end;
کد:if Xls_To_StringGrid(StringGrid1, 'd:\Book1.xls') then
ShowMessage('Table has been exported!');
سلامنقل قول:
نوشته شده توسط soldier
موضوع بحث بهتر بودن اكسس يا اكسل نيست!
هيچ آدم عاقلي نمياد از اكسل به صورت بانك اطلاعاتي استفاده كند. اين دوتا برنامه 2 چيز متفاوت هستند پس نميشه خيلي راحت باهم مقايسشون كرد.
در مورد امنيت هم بستگي داره به چي بگيد امنيت . اگر قابليت گذاشتن كلمه عبور باشد كه به راحتي مي توان هردو اين برنامه ها را دور زد.
سلام
ببخشيد ! چه ربطي داشت به موضوع! من فقط توضيح در مورد امنيت اكسل مي خواستم !نقل قول:
موضوع بحث بهتر بودن اكسس يا اكسل نيست!
هيچ آدم عاقلي نمياد از اكسل به صورت بانك اطلاعاتي استفاده كند. اين دوتا برنامه 2 چيز متفاوت هستند پس نميشه خيلي راحت باهم مقايسشون كرد.
از نظر دور زدن! بله روش داره! غير از گذاشتن كلمه عبور راه ديگه اي نيست كه جلوي
هك شدنش رو بگيره! يعني اطلاعات ديتابيس لو نرن؟
اما من در اين مورد (امنيت) بيشتر دوست دارم در مورد اكسس باشه
چون من فعلآ با اكسس كار مي كنم! بهتره كه اين بحث رو جاي ديگه ادامه بديم!
موفق باشي
سلام
بهترين راه كد كردن اطلاعات است.
سلام
از راهنمايي هر دو تون متشكرم
سلام
اگر منظورت از نفر دومي من هستم! خواهش مي كنم!
قابلي نداشت! اما نانفرس جان هم زحمت زيادي كشيد !:)
موفق باشيد
const
; xlCellTypeLastCell = $0000000B
با سلام خدمت None Force می خواستم بدانم این کد بالا در برنامه چکار میکند چون من وقتی انو در یک برنامه مشابه حذف میکنم اتفاقی نمی افتد. باتشکر
سلامنقل قول:
كد داراي Comment است.
برنامه براي فهميدن طول و عرض صفحه اكسل، آخرين سلول غير تهي را انتخاب مي كنيد ، به اين صورت طول و عرض صفحه بدست مي آيد.
سلام
اكسل بانك اطلاعاتي نيست ولي امكان ارتباط با تمامي بانكهاي اطلاعاتي را دارد. شما مي توانيد با access يا sql server يا هر گونه external database ارتباط برقرار كنيد. ولي اگر هدف شما ارائه پكيج است راه را اشتباه انتخاب كرده ايد. از excel براي تحليل محتويات بانك مي توان استفاده كرد ولي محيطي براي استفاده end user نيست.
براي مخفي كردن اطلاعاتتان علاوه بر روشهاي مرسوم مي توانيد از روش خاص من؟! هم استفاده كنيد:
در format cell گزينه custom را انتخاب كرده و عبارت ;;; را وارد كنيد. نتيجه جالب است نه؟
جناب MAR_PROGRAMMER عزیز
باید خدمتون عرض کنم که اگه می خواین با کمترین کدنویسی اطلاعات رو انتقال بدین به یه نرم افزار دیگه و یا یه بانک دیگه بهتره در محیط ویژوال بیسیک با این فایل اکسل ارتباط برقرار کنین و اطلاعات داخلش رو با یه عنصر DATA ازش بگیرین و داخل چند تا textbox به تعداد فیلدهاتون بریزین و بعد از اونجا هم راحت به مکان جدید منتقلشون کنید . همه این کارها با چند تا کلیک امکانپذیره
موفق باشید
سلام خدمت noneforce جان
عزیز جان من کارم واقعا گیره و می خواهم یک فایل Excel را در دلفی باز کنم و پردازشهایی روی اون انجام دهم و اطلاعات را ذخیره کنم می خواستم از اون کدهایی که در پستهای بالا گفتی استفاده کنم ولی راستش چیز زیادی دستگیرم نشد مثلا این کد XLApp.Workbooks.Open(AXLSFile) در دلفی به من خطا میده اگه ممکنه راهنماییم کن و یه توضیح در مورد کدها بهم بده
ممنونم.
سلامنقل قول:
چه خطايي؟
اگر ميخواهيد با فايلهاي اكسل كار كنيد بهترين كار XLSReadWriteII است كه قبلا معرفي شده.
سلام noneforce جان اگه ممكنه لينك اين كامپوننت را معرفي كن چون لينكهاي قديمي موجود در سايت خراب هستند (البته مي خواهم واقعا كار راه انداز باشند)
سلامنقل قول:
لينكها سالم هستند. ولي من بازم باهاشون صحبت ميكنم كه حتما كارتون را راه بياندازند.
سلام
اول اينكه ممنون
و دوم :
پس جوابش با خودت ديگه