vbamania.pl
login:
hasło:
 
  *Rejestracja *Zapomniane hasło
 Dziś jest niedziela, 20 czerwca 2021 roku.
Ustaw jako stronę startową Ulubione Napisz
7 kwietnia 2021

Nowa wersja makra w dziale Excel, demonstrującego dynamiczne dodanie nagłówków do kontrolki Listbox.

zamieścił: admin




27 marca 2021

Nowe makro w dziale Excel.
Makro demonstruje dynamiczne dodanie nagłówków do kontrolki Listbox.

zamieścił: admin


24 lutego 2021

Dziś wracam do startej nazwy serwisu, gdyż udało mi się przechwycić domenę.
Tak więc... VBA.Mania powraca!

zamieścił: admin


27 stycznia 2021

Dwa nowe makra w dziale Excel.
Jedno to poprawiona wersja makra do wyboru katalogu, a druga to implementacja paska postępu (Progress bar).

zamieścił: admin


24 stycznia 2021

Nowe makro w dziale AutoCAD.

zamieścił: admin


18 grudnia 2020

Nowe makro w dziale Excel.

zamieścił: admin


12 grudnia 2020


zamieścił: admin


Porada 10 marca 2020
Jak uzyskać nazwę użytkownika, komputera i jego adres IP?
Sub GetUCIP(strUserName As String, strIP As String, strCompName As String)

Dim oNic1, oNic, wScript, wshNetwork, wshShell

Set wshShell = CreateObject("WScript.Shell")
strUserName = wshShell.ExpandEnvironmentStrings("%USERNAME%")

Set wshNetwork = CreateObject("WScript.Network")
strCompName = wshNetwork.Computername
        
Set oNic1 = GetObject("winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration")

For Each oNic In oNic1
    If oNic.IPEnabled Then strIP = oNic.IPAddress(0): Exit For
Next oNic

Set oNic1 = Nothing
Set wshNetwork = Nothing
Set wshShell = Nothing

End Sub

'------------------------------------------------

Sub TestUsernameComputernameIP()

Dim strUserName As String, strIP As String, strCompName As String

GetUCIP strUserName, strIP, strCompName

MsgBox "Username:" & vbTab & strUserName & vbCrLf & "Computername:" & vbTab & strCompName & vbCrLf & "IP-Address:" & vbTab & strIP

End Sub


zamieścił: admin


Porada 6 marca 2020
Wykorzystanie pliku XML do przechowywania danych konfiguracyjnych.

Poniższy program prezentuje wykorzystanie biblioteki XML Dom do odczytywania danych zawartych w pliku XML.
Sub GetConfiguration(strFile As String, ByRef Data() As String, ByRef Number As Long)

Dim oXML As MSXML2.DOMDocument
Dim oList As MSXML2.IXMLDOMNode
Dim i As Long

Set oXML = New MSXML2.DOMDocument
oXML.async = True
oXML.Load strFile

For Each oList In oXML.getElementsByTagName("List")
    Data(i, 1) = oList.Attributes.getNamedItem("Name").nodeTypedValue
    Data(i, 2) = oList.SelectSingleNode("Size").nodeTypedValue
    Data(i, 3) = oList.SelectSingleNode("Price").nodeTypedValue
    i = i + 1
Next oList

Numer = oXML.SelectSingleNode("//Config/Number").nodeTypedValue

Set oXML = Nothing

End Sub

'-------------------------------------------------------------------
Sub Test()

Dim Data(0 To 1, 1 To 3) As String
Dim Number As Long

GetConfiguration "config.xml", Data, Number

MsgBox "Name: " & vbTab & Data(0, 1) & vbCrLf & _
        "Size: " & vbTab & Data(0, 2) & vbCrLf & _
        "Price: " & vbTab & Data(0, 3) & vbCrLf & _
        "Number: " & vbTab & Numer

End Sub


poniżej listing pliku config.xml:
<?xml version="1.0" encoding="utf-8"?>
<Config>

<List Name="Pierwszy">
<Size>S</Size>
<Price>100</Price>
</List>

<List Name="Drugi">
<Size>XXL</Size>
<Price>105</Price>
</List>

    <Number>2</Number>

</Config>


zamieścił: admin


Porada 3 marca 2020
Usuwanie krótkich segmentów w krzywych w CorelDraw.
Sub RemoveSmallSegments()

Dim sShape As Shape
If ActiveShape Is Nothing Then Exit Sub Else Set sShape = ActiveShape

Dim oShapeRange As ShapeRange
Dim dDist As Double
Dim X As Double, Y As Double, W As Double, H As Double, i As Long
Dim lDirection As cdrContourDirection

sShape.GetBoundingBox X, Y, W, H

'set offset as 0.02 (2%) of heigth of the selected shape
dDist = H * 0.02

For i = 1 To 4
    If i = 1 Or i = 4 Then lDirection = cdrContourOutside Else lDirection = cdrContourInside
    sShape.CreateContour lDirection, dDist, 1, cdrDirectFountainFillBlend, , , , 0, 0, cdrContourSquareCap, cdrContourCornerMiteredOffsetBevel, 0
    sShape.ConvertToCurves
    Set oShapeRange = sShape.Effects(1).Separate
    Set sShape = oShapeRange(1)
    oShapeRange(2).Delete
Next i

sShape.Selected = True
Set oShapeRange = Nothing

End Sub


zamieścił: admin




<-wstecz  1 2 3 4 5 6 7 8 9 10  dalej->
wszystkich stron: 12