Aller au contenu

Visual Basic

Avy amin'i Wikibooks

Visual Basic (VB) dia fiteny fandaharana avy amin'i Microsoft izay natao mba ho mora ampiasaina sy mora takarina. Izy io dia ampiasaina indrindra amin'ny famoronana rindrambaiko mifototra amin'ny varavarankely sy rindrambaiko miorina amin'ny tanjona.

Fandaharana Tsotra

[hanova]

Fandaharana tsotra indrindra amin'ny Visual Basic dia ny "Hello, World!" izay mampiseho hafatra eo amin'ny efijery:

Module Module1
    Sub Main()
        Console.WriteLine("Salama, izao tontolo izao!")
        Console.ReadLine()
    End Sub
End Module

Fototra amin'ny Visual Basic

[hanova]

Fanova

[hanova]

Ny fanova dia ampiasaina hitahirizana sanda ao anaty fandaharana:

Dim anarako As String
Dim taonako As Integer

anarako = "Rakoto"
taonako = 25

Console.WriteLine("Ny anarako dia " & anarako & ", ary " & taonako & " taona aho.")

Karazana Angon-drakitra

[hanova]

Visual Basic dia manohana karazana angon-drakitra maro toy ny:

  • String : Ho an'ny soratra.
  • Integer : Ho an'ny isa manontolo.
  • Double : Ho an'ny isa manana ampahany.
  • Boolean : Ho an'ny sanda marina na diso.
  • Date : Ho an'ny daty sy ora.

Fepetra sy Boribory

[hanova]

Fepetra

[hanova]

Visual Basic dia mampiasa If, ElseIf, ary Else ho an'ny fepetra:

Dim isa As Integer
isa = 18

If isa >= 18 Then
    Console.WriteLine("Olondehibe ianao.")
Else
    Console.WriteLine("Zaza ianao.")
End If

Boribory

[hanova]

Visual Basic dia manohana boribory toy ny For, While, ary Do While:

For i As Integer = 1 To 5
    Console.WriteLine("Isan'ny: " & i)
Next

Fomba sy Fampiasa (Methods and Functions)

[hanova]

Ny fomba dia asa izay mety ho amboarina ao anatin'ny kilasy na module iray ary mety haverina ampiasaina:

Sub Fiarahabana()
    Console.WriteLine("Salama, Visual Basic!")
End Sub

Sub Main()
    Fiarahabana()
    Console.ReadLine()
End Sub

Fampiasa misy fiverenana sanda

[hanova]

Fampiasa dia mitovy amin'ny fomba fa izy dia mamerina sanda:

Function Fanampiana(a As Integer, b As Integer) As Integer
    Return a + b
End Function

Sub Main()
    Dim valiny As Integer
    valiny = Fanampiana(5, 3)
    Console.WriteLine("Ny valiny dia: " & valiny)
    Console.ReadLine()
End Sub

Kilasy sy Zavatra (Object-Oriented Programming)

[hanova]

Visual Basic dia manohana ny Object-Oriented Programming (OOP) amin'ny alalan'ny fampiasana kilasy sy zavatra:

Public Class Olona
    Public Anarana As String
    Public Taona As Integer

    Public Sub Aseho()
        Console.WriteLine("Anarana: " & Anarana & ", Taona: " & Taona)
    End Sub
End Class

Module Module1
    Sub Main()
        Dim olona1 As New Olona()
        olona1.Anarana = "Rakoto"
        olona1.Taona = 30
        olona1.Aseho()

        Console.ReadLine()
    End Sub
End Module

Inheritance (Fandovana)

[hanova]

Ny fandovana dia mamela ny kilasy iray handova ny toetra sy fomba avy amin'ny kilasy iray hafa:

Public Class Mpiasa
    Public Anarana As String
    Public Karama As Double

    Public Sub AsehoMpiasa()
        Console.WriteLine("Mpiasa: " & Anarana & ", Karama: " & Karama)
    End Sub
End Class

Public Class Mpitantana
    Inherits Mpiasa

    Public IsanMpiasa As Integer

    Public Sub AsehoMpitantana()
        AsehoMpiasa()
        Console.WriteLine("Isan'ny mpiasa tantanana: " & IsanMpiasa)
    End Sub
End Class

Module Module1
    Sub Main()
        Dim mpitantana1 As New Mpitantana()
        mpitantana1.Anarana = "Rabe"
        mpitantana1.Karama = 5000
        mpitantana1.IsanMpiasa = 10
        mpitantana1.AsehoMpitantana()

        Console.ReadLine()
    End Sub
End Module

Fehiny

[hanova]

Visual Basic dia fiteny mora ampiasaina sy takarina izay tsara ho an'ny olona vao manomboka mianatra fandaharana na mamorona rindrambaiko amin'ny sehatra Windows. Ny fahatakarana ny fototra sy ny OOP dia zava-dehibe amin'ny fampiasana Visual Basic amin'ny famoronana rindrambaiko mahomby sy miasa tsara.


Visual Basic for Applications (VBA) dia fiteny fandaharana ampiasaina amin'ny Microsoft Excel mba hamoronana rindrambaiko, hanondranana angona, ary hanaovana asa hafa maro. Ireto misy fampiasana manan-danja amin'ny VBA amin'ny Excel:

Mamorona Rindrambaiko

[hanova]

VBA dia azo ampiasaina hamoronana rindrambaiko kely na macros ao amin'ny Excel mba hanamora ny asan'ny mpampiasa. Ohatra, ianao dia afaka mamorona bokotra ao amin'ny Excel izay mandeha amin'ny kaody VBA iray.

Sub Fiarahabana()
    MsgBox "Tonga soa amin'ny Excel VBA!"
End Sub

Ahoana no fampiasana:

  1. Sokafy ny Excel ary tsindrio ny Alt + F11 mba hidirana amin'ny Visual Basic for Applications (VBA).
  2. Mifidiana Insert > Module.
  3. Adikao ao ny kaody etsy ambony.
  4. Avy eo, afaka miantso ny kaody avy amin'ny bokotra na rehefa tsindriana ny Run.

Mandefa Mailaka miaraka amin'ny Angona ao amin'ny Excel

[hanova]

Azonao atao ny mandefa mailaka mivantana avy amin'ny Excel amin'ny alalan'ny VBA, izay afaka mandefa mailaka miaraka amin'ny angona ao amin'ny Excel ho toy ny vatana na toy ny fampirimana manampy.

Sub MandefaMailaka()
    Dim OutApp As Object
    Dim OutMail As Object

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    On Error Resume Next
    With OutMail
        .To = "[email protected]"
        .Subject = "Tatitra avy amin'ny Excel"
        .Body = "Ity ny tatitra momba ny angona anao."
        .Attachments.Add ActiveWorkbook.FullName
        .Send
    End With
    On Error GoTo 0

    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

Ahoana no fampiasana:

  1. Ampidiro ao amin'ny module VBA ao amin'ny Excel ny kaody etsy ambony.
  2. Ovay ny adiresy mailaka sy ny hafatra araka izay tianao.
  3. Mampandeha ny kaody mba handefasana mailaka miaraka amin'ny tatitra na angona avy amin'ny Excel.

Mandefa Angona any amin'ny Tahiry (Database)

[hanova]

Amin'ny VBA, azonao atao ny mandefa angona avy amin'ny Excel any amin'ny tahiry (toy ny SQL Server) amin'ny alalan'ny OLEDB na ADO.

Sub MandefaAngonaAminTahiry()
    Dim conn As Object
    Dim cmd As Object
    Dim sql As String

    Set conn = CreateObject("ADODB.Connection")
    Set cmd = CreateObject("ADODB.Command")

    conn.Open "Provider=SQLOLEDB;Data Source=ServerName;Initial Catalog=DatabaseName;User ID=User;Password=Password;"
    
    sql = "INSERT INTO TableName (Anarana, Taona) VALUES ('Rakoto', 30)"
    cmd.ActiveConnection = conn
    cmd.CommandText = sql
    cmd.Execute

    conn.Close
    Set cmd = Nothing
    Set conn = Nothing
End Sub

Ahoana no fampiasana:

  1. Ampidiro ao amin'ny module VBA ny kaody etsy ambony.
  2. Ovay ny ServerName, DatabaseName, ary ny tahirin-kevitra hafa araka ny fitomboky ny tahiry anao.
  3. Mampandeha ny kaody mba handefasana angona avy amin'ny Excel any amin'ny tahiry.

Maka Angona avy amin'ny Loharano Ivelany

[hanova]

Azonao atao ny maka angona avy amin'ny loharano ivelany toy ny API na tranonkala amin'ny fampiasana VBA.

Sub MakaAngonaApi()
    Dim http As Object
    Dim JSON As String

    Set http = CreateObject("MSXML2.XMLHTTP")
    http.Open "GET", "https://api.example.com/data", False
    http.Send

    JSON = http.ResponseText
    MsgBox JSON
End Sub

Ahoana no fampiasana:

  1. Ampidiro ao amin'ny module VBA ny kaody etsy ambony.
  2. Ovay ny URL ho amin'ny API na loharano angona tianao hakana.
  3. Mampandeha ny kaody mba haka angona avy amin'ny loharano ivelany ary asehoy ny valiny.

Visual Basic dia azo ampiasaina ao amin'ny Microsoft Word mba hamoronana tatitra marani-tsaina sy hampitombo ny fahombiazana amin'ny asa.

Mamorona Tatitra Marani-tsaina

[hanova]

Azonao atao ny mamorona tatitra mandeha ho azy ao amin'ny Word amin'ny alalan'ny VBA, izay mameno angona avy amin'ny loharano isan-karazany, toy ny Excel na tahiry, ary mandamina azy ao amin'ny template tatitra.

Sub MamoronaTatitra()
    Dim doc As Document
    Dim rng As Range
    Set doc = Documents.Add

    ' Mamerina ny template
    Set rng = doc.Content
    rng.Text = "Tatitra momba ny Angona"

    ' Mampiditra angona avy amin'ny Excel
    Dim ws As Worksheet
    Set ws = Workbooks.Open("C:\Path\to\your\file.xlsx").Sheets(1)
    
    rng.InsertAfter vbCrLf & "Anarana: " & ws.Range("A1").Value
    rng.InsertAfter vbCrLf & "Taona: " & ws.Range("B1").Value

    ' Mitehiriza ny tatitra
    doc.SaveAs2 "C:\Path\to\your\report.docx"
    doc.Close
End Sub

Ahoana no fampiasana:

  1. Ampidiro ao amin'ny module VBA ao amin'ny Word ny kaody etsy ambony.
  2. Ovay ny lalana ho amin'ny rakitra Excel sy ny rakitra Word tianao tehirizina.
  3. Mampandeha ny kaody mba hamoronana tatitra mandeha ho azy ao amin'ny Word.

Fehiny

[hanova]

Ny Visual Basic for Applications (VBA) dia manome fahaizana mahery vaika amin'ny famoronana rindrambaiko ao amin'ny Microsoft Office. Ny fahaizana mamorona fandaharana VBA amin'ny Excel sy Word dia ahafahanao manatsara ny fahombiazana sy mamorona tatitra marani-tsaina ary mandeha ho azy izay mety hanamora ny asanao.