نمایش پیام

Collapse
این تاپیک قفل است.
X
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • kazem1359

    • 2018/06/08
    • 331
    • 39.00

    [حل شده] نمایش پیام

    سلام یک فایل اکسل دارم که فقط روی سیستم 64 کار میکنه حالا این امکان هست که اگر فایل روی سیستم 32 اجرا شد برنامه اکسل تشخیص بده و پیام نمایش بده که سیستم 64 نیست؟ ممنون
  • alfa

    • 2012/05/18
    • 157
    • 4.00

    #2
    VBA 7 code base
    کار میکنه انشالله
    چون ویندوز 64 از VBA 7 code base استفاده میکنه که این شرایط را پیش میاره تا از اکسل 2007 به بعد را در ویندوز 32 بیتی ساپورت بکنه
    [FONT=tahoma]:Smilebb (31):[/FONT]

    کامنت

    • kazem1359

      • 2018/06/08
      • 331
      • 39.00

      #3
      سلام میشه بیشتر توضیح بدین چطوری انجام بدم؟
      ممنون

      کامنت

      • mokaram
        مدير تالار اکسل و بانک اطلاعاتی

        • 2011/02/06
        • 1805
        • 74.00

        #4
        فرض کنید کد شما کد زیر باشه :
        کد PHP:
         Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As StringByVal lpWindowName As String) As Long 
        کافیه اون خط کد را با If شرطی کنید که اگه 64 بیتی بود همون کد اگه نه ن خط به جز عبارت PtrSafe. مثلا:

        کد:
        #If VBA7 Then    Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
        #Else
            Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
        #End If
        نکته مهم تو نوشتن کد برای 32 بیتی ، برداشتن عبارت PtrSafe از کدتون هست.
        [CENTER][IMG]http://forum.exceliran.com/signaturepics/sigpic909_10.gif[/IMG]
        [/CENTER]

        کامنت

        • kazem1359

          • 2018/06/08
          • 331
          • 39.00

          #5
          برای برعکس قضیه اگر سیستم 32 باشه ایا باید همون کلمه if vba7 را بنویسم ؟

          کامنت

          • mokaram
            مدير تالار اکسل و بانک اطلاعاتی

            • 2011/02/06
            • 1805
            • 74.00

            #6
            نوشته اصلی توسط kazem1359
            برای برعکس قضیه اگر سیستم 32 باشه ایا باید همون کلمه if vba7 را بنویسم ؟
            قطعه کدی که مثال زدم دقیقا به این شکل عمل میکنه که اگه سیستم 32 بیتی باشه کد مربوط به 32 فراخوانی میشه و برعکسش
            [CENTER][IMG]http://forum.exceliran.com/signaturepics/sigpic909_10.gif[/IMG]
            [/CENTER]

            کامنت

            چند لحظه..