ארטיקלען

ביישפילן פון עקססעל מאַקראָס געשריבן מיט וובאַ

די פאלגענדע פּשוט עקססעל מאַקראָו ביישפילן זענען געשריבן מיט וובאַ 

עסטימאַטעד לייענען צייט: 3 minuti

וובאַ בייַשפּיל ניצן Array

די פאלגענדע סאַב פּראָצעדור לייענט וואַלועס פון סעלז אין זייַל א פון די אַקטיוו ווערקשיט, ביז עס ינקאַונטערז אַ ליידיק צעל. די וואַלועס זענען סטאָרד אין אַ מענגע. דעם פּשוט עקססעל מאַקראָו בייַשפּיל ילאַסטרייץ די נוצן פון:

  • וועריאַבאַל דעקלעריישאַנז;
  • דינאַמיש עקוויפּמענט;
  • א ציקל Do Until;
  • אָפּשיקן צו סעלז אין דעם קראַנט עקססעל ווערקשיט;
  • די VBA פֿונקציע Ubound געבויט-אין (וואָס קערט די העכסטן אינדעקס פון אַ מענגע).
' Sub procedure store values in Column A of the active Worksheet
' into an array
Sub GetCellValues()
Dim iRow As Integer            ' stores the current row number
Dim dCellValues() As Double  ' array to store the cell values
iRow = 1
ReDim dCellValues(1 To 10)
' Do Until loop to extract the value of each cell in column A
' of the active Worksheet, as long as the cell is not blank
Do Until IsEmpty(Cells(iRow, 1))
   ' Check that the dCellValues array is big enough
   ' If not, use ReDim to increase the size of the array by 10
   If UBound(dCellValues) < iRow Then
      ReDim Preserve dCellValues(1 To iRow + 9)
   End If
   ' Store the current cell in the CellValues array
   dCellValues(iRow) = Cells(iRow, 1).Value
   iRow = iRow + 1
Loop
End Sub

דער פּראָצעדור סטאָרז די וואַלועס אין זייַל א פון די אַקטיוו ווערקשיט אין אַ מענגע, טאָן אַז:

  • דער ציקל Do Until עקסטראַקט די וואַלועס פון יעדער צעל אין זייַל א פון די אַקטיוו ווערקשיט, יגנאָרינג ליידיק סעלז
  • דער מצב"If UBound(dCellValues) < iRow" טשעקס אַז די dCellValues ​​מענגע איז גרויס גענוג צו האַלטן די אינפֿאָרמאַציע, אויב נישט, נוצן ReDim צו פאַרגרעסערן די גרייס פון די מענגע מיט 10
  • צום סוף, בילדונג​​dCellValues(iRow) = Cells(iRow, 1).Value"סטאָרז די קראַנט צעל אין די CellValues ​​מענגע

וובאַ בייַשפּיל מיט מאַטאַמאַטיקאַל אַפּעריישאַנז

די פאלגענדע סאַב פּראָצעדור לייענט די וואַלועס פון זייַל א פון די ווערקשיט מיטן נאָמען "Sheet2" און פּערפאָרמז אַריטמעטיק אַפּעריישאַנז אויף די וואַלועס. די ריזאַלטינג וואַלועס זענען געדרוקט אין זייַל א פון די קראַנט אַקטיוו ווערקשיט.

דער מאַקראָ ילאַסטרייץ:

כידעש נוזלעטער
דו זאלסט נישט פאַרפירן די מערסט וויכטיק נייַעס וועגן כידעש. צייכן אַרויף צו באַקומען זיי דורך E- בריוו.
  • וועריאַבאַל דעקלעריישאַנז;
  • עקססעל אַבדזשעקץ (ספּעציעל נוצן די באַשטעטיק קיווערד און ווי צו אַקסעס די 'שאַץ' כייפעץ פֿון די 'שיץ' כייפעץ);
  • א ציקל Do Until;
  • אַקסעס ווערקשיץ און צעל ריינדזשאַז אין דעם קראַנט עקססעל וואָרקבאָאָק.
' Sub procedure to loop through the values in Column A of the Worksheet
' "Sheet2", perform arithmetic operations on each value, and write the
' result into Column A of the current Active Worksheet ("Sheet1")
Sub Transfer_ColA()
Dim i As Integer
Dim Col As Range
Dim dVal As Double
' Set the variable 'Col' to be Column A of Sheet 2
Set Col = Sheets("Sheet2").Columns("A")
i = 1
' Loop through each cell of the column 'Col' until
' a blank cell is encountered
Do Until IsEmpty(Col.Cells(i))
   ' Apply arithmetic operations to the value of the current cell
   dVal = Col.Cells(i).Value * 2 + 1
   ' The command below copies the result into Column A
   ' of the current Active Worksheet - no need to specify
   ' the Worksheet name as it is the active Worksheet.
   Cells(i, 1) = dVal
   i = i + 1
Loop
End Sub

וובאַ בייַשפּיל מיט מאָדיפיקאַטיאָן דאַטע רעקאָרדינג

זאל ס שרייַבן אַ פּשוט VBA מאַקראָו אַז פירעס ווען אַ צעל אין אַ ספּעציפיש קייט פון אונדזער בלאַט איז דערהייַנטיקט. רעכן איר ווילן צו שפּור ענדערונגען אין זייַל ב (B4 צו B11) און רעקאָרדירן די דאַטע און צייט פון די ענדערונג אין זייַל א.
זאל ס גיינ ווייַטער ווי דאָס:

  • אין די קוויטל Developer דריקט אויף אָפּציע "Visual Basic"צו עפֿענען די VBA רעדאַקטאָר.
  • אין די VBA רעדאַקטאָר, טאָפּל-גיט די קאָד רעדאַקטאָר שייך צו Sheet2.
  • קלייַבן ווערקשיט פון די רעכט (אָדער לינקס) קוויטל און סעלעקטירן דעם טוישן אָפּציע.
  • לייג VBA קאָד:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B1:B10")) Is Nothing Then
        Target.Range("A1:A1").Value = Now
    End If
End Sub

היט די וואָרקבאָאָק מיט מאַקראָס ענייבאַלד (למשל, ווי אַ .קסלסם טעקע).


איצט, יעדער מאָל מיר דערהייַנטיקן אַ צעל אין זייַל ב (פון רודערן 1 צו רודערן 10), דער צעל אין זייַל א וועט אויטאָמאַטיש ווייַזן די קראַנט דאַטע און צייט.

Ercole Palmeri

כידעש נוזלעטער
דו זאלסט נישט פאַרפירן די מערסט וויכטיק נייַעס וועגן כידעש. צייכן אַרויף צו באַקומען זיי דורך E- בריוו.

לעצטע ארטיקלען

Veeam פֿעיִקייטן די מערסט פולשטענדיק שטיצן פֿאַר ראַנסאָמוואַרע, פֿון שוץ צו ענטפער און אָפּזוך

Coveware דורך Veeam וועט פאָרזעצן צו צושטעלן ענטפער באַדינונגס פֿאַר סייבער יקסטאָרשאַן אינצידענט. קאָוועוואַרע וועט פאָרשלאָגן פאָרענסיקס און רימעדייישאַן קייפּאַבילאַטיז ...

קסנומקס אפריל קסנומקס

גרין און דיגיטאַל רעוואלוציע: ווי פּרידיקטיוו וישאַלט איז טראַנספאָרמינג די אָיל און גאַז אינדוסטריע

פּרידיקטיוו וישאַלט איז רעוואַלושאַנייזינג די ייל & גאַז סעקטאָר, מיט אַן ינאַווייטיוו און פּראָואַקטיוו צוגאַנג צו פאַבריק פאַרוואַלטונג.…

קסנומקס אפריל קסנומקס

וק אַנטיטראַסט רעגולאַטאָר רייזאַז ביגטעטש שרעק איבער GenAI

די UK CMA האט ארויס אַ ווארענונג וועגן ביג טעק ס נאַטור אין די קינסטלעך סייכל מאַרק. דאָרט…

קסנומקס אפריל קסנומקס

Casa Green: ענערגיע רעוואָלוציע פֿאַר אַ סאַסטיינאַבאַל צוקונפֿט אין איטאליע

די "קאַסע גרין" דעקרעט, פארמולירט דורך די אייראפעישע יוניאַן צו פאַרבעסערן די ענערגיע עפעקטיווקייַט פון בנינים, האט פארענדיקט זיין לעגיסלאַטיווע פּראָצעס מיט ...

קסנומקס אפריל קסנומקס

לייענען כידעש אין דיין שפּראַך

כידעש נוזלעטער
דו זאלסט נישט פאַרפירן די מערסט וויכטיק נייַעס וועגן כידעש. צייכן אַרויף צו באַקומען זיי דורך E- בריוו.

גיי אונדז